12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #!/bin/bash
-
-
- MYSQL_BACKUP_DIR="/tmp/mysql_backup"
- MYSQL_BACKUP_FILE="all_databases_backup.sql"
-
-
- echo "Stopping MySQL service..."
- sudo systemctl stop mysqld
-
-
- echo "Backing up all databases..."
- mkdir -p $MYSQL_BACKUP_DIR
- sudo mysqldump -u root -p --all-databases > $MYSQL_BACKUP_DIR/$MYSQL_BACKUP_FILE
-
-
- echo "Removing MySQL and related packages..."
- sudo yum remove -y mysql-server mysql mysql-libs
-
-
- echo "Removing MySQL data and configuration files..."
- sudo rm -rf /var/lib/mysql
- sudo rm -f /etc/my.cnf
- sudo rm -rf /etc/mysql
- sudo rm -f /var/log/mysqld.log
-
-
- echo "Installing MySQL repository..."
- sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm -O /tmp/mysql80-community-release-el7-3.noarch.rpm
- sudo rpm -ivh /tmp/mysql80-community-release-el7-3.noarch.rpm
-
-
- echo "Installing MySQL server..."
- sudo yum install -y mysql-server
-
-
- echo "Starting MySQL service..."
- sudo systemctl start mysqld
-
-
- echo "Enabling MySQL to start on boot..."
- sudo systemctl enable mysqld
-
-
- MYSQL_TEMP_PASSWORD=$(sudo grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}')
-
-
- echo "Securing MySQL installation..."
- sudo mysql_secure_installation <<EOF
-
- $MYSQL_TEMP_PASSWORD
- y
- new_password_here
- new_password_here
- y
- y
- y
- y
- EOF
-
-
- echo "Verifying MySQL service status..."
- sudo systemctl status mysqld
-
-
- echo "Restoring MySQL data..."
- mysql -u root -p < $MYSQL_BACKUP_DIR/$MYSQL_BACKUP_FILE
-
- echo "MySQL reinstallation complete!"
|