天天看点

mysql 设置免密码登录

一般来说,我们会为每个mysql账户设置密码,这样是安全了,但使用和维护起来就不方便了。

每次登入都要输入密码,尤其是调用mysql client工具时,如果直接将密码写在client工具的选项里,则是非常危险的行为,从历史命令就能看到密码了,并且会有类似下面的提示:

mysql: [Warning] Using a password on the command line interface can be insecure.      

这时候,我们其实可以利用 login-path 功能来提高安全性及便利性。

login-path 特性是MySQL 5.6新增的。

首先,利用 mysql_config_editor 配置login-path:

#选项 ”-G lp-mysql56-38-3306”设定login-path的别名

1.生成.mylogin.cnf

mysql_config_editor set -G lp-mysql56-38-3306 -S /var/lib/mysql/mysql.sock -uroot -p      
mysql 设置免密码登录

执行完成后 就会在该用户的 $HOME目录下生成 .mylogin.cnf 文件:

mysql 设置免密码登录

这是个加密的二进制文件,即便用明文方式查看,也是无法显示密码的:

mysql_config_editor print --all      
mysql 设置免密码登录

2.接下来可以利用 login-path 很方便的登入 mysqld 而无需额外的密码

(1).原有方式
(2).login-path方式
mysql --login-path=lp-mysql56-38-3306 -e "show databases"       

继续阅读