#!/bin/bash
#
#本脚本适用于centos7的mysql-5.7.37版本
#author:teachain
#date:2022-04-29
#email:281477138@qq.com
#从https://mirrors.ustc.edu.cn/mysql-ftp/Downloads下载文件
#mysql-5.7.37-1.el7.x86_64.rpm-bundle.tar
user="root"
password="123456"
if command -v mysql >/dev/null 2>&1;then
echo "mysql is installed"
exit 0
fi
rm -rf /etc/my.cnf.rpmsave
rm -rf /etc/my.cnf.rpmnew
rm -rf /etc/my.conf
rm -rf /var/lib/mysql
rm -rf /var/lib/yum/history/*.sqlite
rm -rf /var/log/mysqld.log
yum install -y mysql-community-*
echo "mysqld is starting,please wait......"
systemctl start mysqld
systemctl status mysqld
temporaryPassword=$(grep 'temporary password' /var/log/mysqld.log|awk '{print $11}')
if [ $temporaryPassword == "" ];then
echo "temporary password not in /var/log/mysqld.log"
exit 1
fi
sql="set global validate_password_policy=LOW;"
mysql --connect-expired-password -u ${user} -p${temporaryPassword} -e "${sql}"
sql="set global validate_password_length=6;"
mysql --connect-expired-password -u ${user} -p${temporaryPassword} -e "${sql}"
sql="ALTER USER '${user}'@'localhost' IDENTIFIED BY '${password}';use mysql;update user set Host='%' where User='${user}';flush privileges;"
mysql --connect-expired-password -u ${user} -p${temporaryPassword} -e "${sql}"
if [ -f "/etc/my.cnf" ];then
tee -a /etc/my.cnf <
卸载mysql
if command -v mysql >/dev/null 2>&1;then
list=$(yum list installed | grep mysql|awk '{print $1}')
for i in $list;
do
systemctl stop mysql
echo "compontent:$i"
yum -y remove $i
done
else
echo "mysql is not installed"
exit 0
fi
rm -rf /var/lib/mysql
rm -rf /var/lib/yum/history/*.sqlite
rm -rf /var/log/mysqld.log
rm -rf /etc/my.cnf.rpmsave
rm -rf /etc/my.cnf.rpmnew
rm -rf /etc/my.conf



