[原创]mysql login-path 快捷免密登陆

1.什么是 login-path

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

  • mysql 的 client 工具都能使用 login-path,如 mysql、mysqldump、mysqladmin、mysqlbinlog、mysql_upgrade、mysqld_safe、mysqld_multi、mysqldumpslow 等等。

2. 配置 login-path

mysql_config_editor使用帮助:

mysql_config_editor set --help

2.2.配置:

mysql_config_editor set --login-path=test --user=test_user  --host=127.0.0.1 --port=3306 --password
  • 其中可配置项
    • -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 添加登陆端口到登陆文件中

2.3.显示配置:

2.3.1.显示执行的login-path配置

mysql_config_editor print --login-path=test 

2.3.2.显示所有的login-path信息

mysql_config_editor print --all

2.4.删除配置:

mysql_config_editor remove --login-path=test
  • 其中可删除项
    • -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 添加登陆端口到登陆文件中

2.5.重置配置:

mysql_config_editor reset --login-path=test

2.6.使用login-path登录:

mysql --login-path=test

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

2.6.1.登录host1:poet1上的MySQL

mysql --login-path=test  -h host1 -P port1

2.6.2.登录host1:poet1上的MySQL中的test_db库

mysql --login-path=test  -h host1 -P port1 test_db

3.参考:

http://dev.mysql.com/doc/refman/5.7/en/mysql-config-editor.html

4.实际配置命令

mysql_config_editor57 set --login-path=xxx --user=xxx --password --host=xxx --port=3306
echo 'alias conn_xxx="mysql --login-path=xxx"' >> ~/.bashrc
. ~/.bashrc

5.登陆效果

  • 输入 con_xxx即可访问数据库。
posted @ 2019-07-12 15:47  指弹小能手  阅读(5557)  评论(0编辑  收藏  举报

关于作者:专注数据库、Python 开发、ROS、深度学习,请多多赐教!

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出, 原文链接 如有问题, 可邮件(iamkuboy@163.com)咨询.