mysql_config_editor的使用

login-path是MySQL5.6.6开始支持的新特性。通过借助mysql_config_editor工具将登陆MySQL服务的认证信息加密保存在.mylogin.cnf文件(默认位于用户主目录) 。之后,MySQL客户端工具可通过读取该加密文件连接MySQL,避免重复输入登录信息,避免敏感信息暴露。

配置:

mysql_config_editor set --login-path=root --user=root  --host=127.0.0.1 --port=3306 --socket=/data/mysql/mysql.sock --password

之后输入密码,密码就被加密起来了,下次使用的话,直接mysql --login-path=root就可以登录。当然root可以是其他有意义的字符串。

其中可配置项
-h,--host=name        添加host到登陆文件中
-G,--login-path=name  在登录文件中为login path添加名字(默认为client)
-p,--password         在登陆文件中添加密码(该密码会被mysql_config_editor自动加密)
-u,--user             添加用户名到登陆文件中
-S,--socket=name      添加sock文件路径到登陆文件中
-P,--port=name        添加登陆端口到登陆文件中

显示配置:
mysql_config_editor print --login-path=root #显示执行的login-path配置
mysql_config_editor print --all             #显示所有的login-path信息

删除配置:
mysql_config_editor remove --login-path=root

重置配置:
mysql_config_editor reset --login-path=root

使用login-path登录:
shell>mysql --login-path=root

多使用帮助
shell> mysql_config_editor --help set
shell> mysql_config_editor set --help

若要登录其他主机、其他端口,或者添加其他额外参数,直接在上述命令后添加即可

mysql_config_editor set --login-path=root --user=root  --host=127.0.0.1 --port=3306 --socket=/data/mysql/mysql.sock --password
mysql --login-path=root 
mysql --login-path=root -e "show databases;"
mysql_config_editor set --login-path=dev-root --user=liyudev  --host=10.0.0.111 --port=3306  --password
mysql --login-path=dev-root   
mysqldump --login-path=dev-root ly2_base > ly2_base.sql

在使用mysqldump 定时备份的时候 需要制定login-path的环境变量
export MYSQL_TEST_LOGIN_FILE=/root/.mylogin.cnf

参考资料

https://dev.mysql.com/doc/refman/5.6/en/mysql-config-editor.html

猜你喜欢

转载自my.oschina.net/longquan/blog/1801611