##------------## # MySQL # ##------------## export DEBIAN_FRONTEND=noninteractive apt install gnupg -y debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/repo-codename select bionic' debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/repo-distro select ubuntu' debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/repo-url string http://repo.mysql.com/apt/' debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-preview select ' debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-product select Ok' debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-server select mysql-8.0' debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-tools select ' debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/unsupported-platform select abort' debconf-set-selections <<< "mysql-community-server mysql-community-server/root-pass password $password" debconf-set-selections <<< "mysql-community-server mysql-community-server/re-root-pass password $password" debconf-set-selections <<< "mysql-community-server mysql-server/default-auth-override select Use Legacy Authentication Method (Retain MySQL 5.x Compatibility)" wget https://dev.mysql.com/get/mysql-apt-config_0.8.13-1_all.deb -O /tmp/mysql-apt-conf.deb dpkg -i /tmp/mysql-apt-conf.deb apt-get update apt-get install -y mysql-server rm /etc/mysql/mysql.conf.d/mysqld.cnf cat > /etc/mysql/mysql.conf.d/mysqld.cnf <<- "EOF" [mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp lc-messages-dir = /usr/share/mysql skip-external-locking innodb_buffer_pool_size = 1G # (adjust value here, 50%-70% of total RAM) innodb_log_file_size = 256M innodb_flush_log_at_trx_commit = 1 # may change to 2 or 0 innodb_flush_method = O_DIRECT bind-address = 127.0.0.1 key_buffer_size = 16M max_allowed_packet = 16M thread_stack = 192K thread_cache_size = 8 myisam-recover-options = BACKUP #max_connections = 100 #table_open_cache = 64 #innodb-thread-concurrency = 10 log_error = /var/log/mysql/error.log expire_logs_days = 10 max_binlog_size = 100M EOF systemctl restart mysql systemctl enable mysql ##-----------------## # PhpMyAdmin # ##-----------------## phpmyadminver=4.9.0.1 cd /tmp mkdir -p /usr/share/phpmyadmin/ mkdir -p /etc/phpmyadmin mkdir -p /var/lib/phpmyadmin/tmp/ wget https://files.phpmyadmin.net/phpMyAdmin/$phpmyadminver/phpMyAdmin-$phpmyadminver-all-languages.tar.gz tar xzf phpMyAdmin-$phpmyadminver-all-languages.tar.gz mv phpMyAdmin-$phpmyadminver-all-languages/* /usr/share/phpmyadmin wget https://git.ictmaatwerk.com/VPS-scripts/Ubuntu-Web/raw/branch/master/config/phpmyadmin/vendor_config.php -O /usr/share/phpmyadmin/libraries/vendor_config.php wget https://git.ictmaatwerk.com/VPS-scripts/Ubuntu-Web/raw/branch/master/config/phpmyadmin/config.footer.inc.php -O /etc/phpmyadmin/config.footer.inc.php wget https://git.ictmaatwerk.com/VPS-scripts/Ubuntu-Web/raw/branch/master/config/phpmyadmin/config.header.inc.php -O /etc/phpmyadmin/config.header.inc.php wget https://git.ictmaatwerk.com/VPS-scripts/Ubuntu-Web/raw/branch/master/config/phpmyadmin/config.inc.php -O /etc/phpmyadmin/config.inc.php touch /var/lib/phpmyadmin/config.inc.php touch /etc/phpmyadmin/config-db.php chown -R www-data:www-data /var/lib/phpmyadmin/ blowsec=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) echo -e "" >> /var/lib/phpmyadmin/blowfish_secret.inc.php mysql -u root --password="$password" < /usr/share/phpmyadmin/sql/create_tables.sql