CentOS6.5修改MySQL初始密码

CentOS6.5下通过Shell修改MySQL初始密码,开启远程登录,授权远程登录用户;
最近在写一个自动化部署的Shell脚本,需要通过Shell修改MySQL初始密码,开启远程登录,授权远程登录用户,
经过一番查找和实验,得到以下几个命令,给大家分享一下:
查看初始密码
有几种方法,看哪一种适合你:

1、查看mysql预定义的密码,好像是用yum安装完的用这种方式

cat /root/.mysql_secret  

2、查看mysql预定义的密码,用rpm包安装完的用这种方式

grep 'temporary password' /var/log/mysqld.log 

修改初始密码:
有几种方法:

1、使用mysqladmin

mysqladmin -uroot -pvyCE2UwSaqx3xofR password "123456"  

2、mysql客户端登录后执行SQL语句

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';    

还有一种:

set password=password('123456');  

开启远程登录,授权远程登录用户:

grant all privileges on *.* to '用户名'@'%' identified by '密码' withg rant option;  
mysql -uroot -proot -e "grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;"  

注意:命令前的“mysql -uroot -proot -e ”是直接在Shell下执行SQL语句,不登录mysql客户端。
使授权立即生效:

mysql -uroot -proot -e "flush privileges;"  

你可能感兴趣的:(linux)