编写脚本 mysql_passwd.sh(此脚本用于修改 mysql 密码及刷新权限)

编写脚本 mysql_passwd.sh(此脚本用于修改 mysql 密码及刷新权限)

vi mysql_passwd.sh

#!/bin/bash
# 安装 expect 插件
yum install -y expect
# 修改密码为 [email protected]!
pass=`awk -F"[ :]+" 'NR==1{print $NF}' /root/.mysql_secret`
/bin/expect << EOF
spawn /usr/bin/mysql -h127.0.0.1 -uroot -p`echo -e $pass` expect "mysql>"
send "SET PASSWORD FOR [email protected]=PASSWORD('[email protected]!');" send "\n"
expect "mysql>"
send 'flush privileges\n' expect "mysql>"
send 'quit\n'
interact
EOF

增加可执行权限并执行脚本

chmod +x mysql_passwd.sh

./mysql_passwd.sh 或 bash mysql_passwd.sh

验证密码,使用修改后的密码登录

mysql -u root [email protected]!

通过以下命令退出mysql:

quit