Update setup_server_laravel.sh
This commit is contained in:
parent
53308155d4
commit
80859182a9
1 changed files with 19 additions and 5 deletions
|
@ -256,16 +256,22 @@ done
|
||||||
if ! command -v mysql &> /dev/null; then
|
if ! command -v mysql &> /dev/null; then
|
||||||
log_message "INFO" "Installing MySQL..."
|
log_message "INFO" "Installing MySQL..."
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
# Pre-set root password
|
||||||
debconf-set-selections <<< "mysql-server mysql-server/root_password password $MYSQL_ROOT_PASSWORD"
|
debconf-set-selections <<< "mysql-server mysql-server/root_password password $MYSQL_ROOT_PASSWORD"
|
||||||
debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $MYSQL_ROOT_PASSWORD"
|
debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $MYSQL_ROOT_PASSWORD"
|
||||||
|
|
||||||
|
# Install MySQL
|
||||||
apt-get install -y mysql-server
|
apt-get install -y mysql-server
|
||||||
|
check_command_status "MySQL installation"
|
||||||
|
|
||||||
# Secure MySQL installation
|
# Secure MySQL installation
|
||||||
mysql -e "DELETE FROM mysql.user WHERE User='';"
|
mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '$MYSQL_ROOT_PASSWORD';"
|
||||||
mysql -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');"
|
mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e "DELETE FROM mysql.user WHERE User='';"
|
||||||
mysql -e "DROP DATABASE IF EXISTS test;"
|
mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');"
|
||||||
mysql -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%';"
|
mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e "DROP DATABASE IF EXISTS test;"
|
||||||
mysql -e "FLUSH PRIVILEGES;"
|
mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%';"
|
||||||
|
mysql -u root -p"$MYSQL_ROOT_PASSWORD" -e "FLUSH PRIVILEGES;"
|
||||||
|
|
||||||
# Optimize MySQL configuration
|
# Optimize MySQL configuration
|
||||||
cat >> /etc/mysql/mysql.conf.d/mysqld.cnf << 'ENDOFMYSQL'
|
cat >> /etc/mysql/mysql.conf.d/mysqld.cnf << 'ENDOFMYSQL'
|
||||||
|
@ -277,10 +283,18 @@ innodb_flush_log_at_trx_commit = 2
|
||||||
innodb_flush_method = O_DIRECT
|
innodb_flush_method = O_DIRECT
|
||||||
ENDOFMYSQL
|
ENDOFMYSQL
|
||||||
|
|
||||||
|
# Restart MySQL to apply changes
|
||||||
systemctl restart mysql
|
systemctl restart mysql
|
||||||
|
check_command_status "MySQL restart"
|
||||||
|
|
||||||
|
# Save MySQL password
|
||||||
log_message "INFO" "MySQL root password: $MYSQL_ROOT_PASSWORD"
|
log_message "INFO" "MySQL root password: $MYSQL_ROOT_PASSWORD"
|
||||||
echo "$MYSQL_ROOT_PASSWORD" > "/var/www/html/mysql_password.txt"
|
echo "$MYSQL_ROOT_PASSWORD" > "/var/www/html/mysql_password.txt"
|
||||||
chmod 600 "/var/www/html/mysql_password.txt"
|
chmod 600 "/var/www/html/mysql_password.txt"
|
||||||
|
|
||||||
|
log_message "INFO" "MySQL installation and configuration completed successfully"
|
||||||
|
else
|
||||||
|
log_message "INFO" "MySQL is already installed, skipping installation"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Setup Laravel Cron Jobs
|
# Setup Laravel Cron Jobs
|
||||||
|
|
Loading…
Reference in a new issue