温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

MySQL实现无密码登录(mysql_config_editor)

发布时间:2020-08-08 00:06:12 来源:ITPUB博客 阅读:151 作者:甲骨文技术支持 栏目:MySQL数据库

有一个业务需求是从一台主机上dump MySQL数据库的数据,但是又不想让业务人员知道具体MySQL用户的密码,可以用mysql_config_editor命令实现

一,测试环境
A机器IP为192.168.3.171
B机器IP为192.168.3.173
打算实现无“密码”从B连接到A

A和B的数据库版本

  1. (root@localhost) [(none)]> select version();
  2. +------------+
  3. | version() |
  4. +------------+
  5. | 5.7.17-log |
  6. +------------+
  7. 1 row in set (0.00 sec)
二,在A机器上创建测试用户并赋予权限

  1. (root@localhost) [(none)]> create user gl@'192.168.3.173' identified by 'onlygl';
  2. Query OK, 0 rows affected (0.00 sec)

  3. (root@localhost) [(none)]> grant all on *.* to gl@'192.168.3.173';
  4. Query OK, 0 rows affected (0.01 sec)
三,在B机器上执行如下命令,输入gl用户的密码

  1. mysql_config_editor set --login-path=gl --host=192.168.3.171 --user=gl --password
四,执行上面命令后,可以在home的目录下找到一个隐藏文件.mylogin.cnf,如下:

  1. -rw------- 1 root root 136 Feb 27 19:04 .mylogin.cnf
五,查看文件里的内容

  1. [root@mysqltest ~]# mysql_config_editor print --all
  2. [gl]
  3. user = gl
  4. password = *****
  5. host = 192.168.3.171
六,登录

  1. [root@mysqltest ~]# mysql --login-path=gl
  2. Welcome to the MySQL monitor. Commands end with ; or \g.
  3. Your MySQL connection id is 311
  4. Server version: 5.7.17-log Mysqlma
  5. Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  6. Oracle is a registered trademark of Oracle Corporation and/or its
  7. affiliates. Other names may be trademarks of their respective
  8. owners.
  9. Type 'help;'or'\h'for help. Type '\c'to clear the current input statement.
  10. (gl@192.168.3.171)[(none)]>
七,如果不想用了,用如下命令删除

  1. mysql_config_editor remove --login-path=gl
八,适用范围

  1. mysql
  2. mysqladmin
  3. mysqldump
九,总结
1.显而易见的是用户密码被修改后,需要重新创建login-path
2.该功能仅仅在5.6.6以上版本才支持


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI