CentOS6.5下通过Shell修改MySQL初始密码,开启远程登录,授权远程登录用户

来源:互联网 发布:微店靠谱还是淘宝靠谱 编辑:程序博客网 时间:2024/05/17 07:16

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;"


注意:

远程连接时可能会遇到以下错误:

连接MySQL错误:Can't connect to MySQL server (10060)

1 0