MySQL之mysql_config_editor使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL之mysql_config_editor使用相关的知识,希望对你有一定的参考价值。
mysql_config_editor/login-path使用
一、设计缘由说明:
login-path是mysql5.6开始支持的新特性。通过借助mysql_config_editor工具将登陆MySQL服务的认证信息加密保存在.mylogin.cnf文件(默认位于用户主目录),
之后,MySQL客户端工具可通过读取该加密文件连接MySQL,避免重复输入登录信息,避免敏感信息暴露。
二、工具使用帮助
mysql_config_editor使用帮助:
2.1配置:
mysql_config_editor set --login-path=test --user=test_user --host=127.0.0.1 --port=3306 --password
或者
mysql_config_editor set -G test001 -uroot -p -hlocalhost -P3306 -S /tmp/mysql.sock
mysql_config_editor set -G test001 -uroot -p
采用哪种方式,具体要根据my.cnf配置文件的中MySQL的登陆参数以及MySQL中的数据库的具体授权来设定
其中可配置项介绍:
-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.2、实例演示
此处以MySQL的root登陆账户来实例演示:
很多同学都是这样登陆MySQL的
[[email protected] ~]# mysql -uroot -p‘wujianwei‘
工具使用
[[email protected] ~]# mysql_config_editor set --login-path=test001 --user=root --host=localhost --port=3306 --password
Enter password:
同时会在位于用户主目录生成一个加密的二进制文件
[[email protected] ~]# ll /root/.mylogin.cnf
-rw------- 1 root root 156 Jul 21 10:36 /root/.mylogin.cnf
[[email protected] ~]#
此时登陆MySQL截图演示:
或者以下的方式也是可以的:
[[email protected] ~]# mysql_config_editor set -G test001 -uroot -hlocalhost -P3306 -S /tmp/mysql.sock -p
Enter password:
[[email protected] ~]# ll .mylogin.cnf
-rw------- 1 root root 192 Jul 21 11:05 .mylogin.cnf
2.3显示配置:
mysql_config_editor print --login-path=test #显示执行的login-path配置
mysql_config_editor print --all #显示所有的login-path信息
实例演示:
[[email protected] ~]# mysql_config_editor print --login-path=test001
[test001]
user = root
password = *****
host = localhost
socket = /tmp/mysql.sock
port = 3306
查看指定的登陆名称登陆信息:
[[email protected] ~]# mysql_config_editor print -Gtest001
[test001]
user = root
password = *****
host = localhost
socket = /tmp/mysql.sock
port = 3306
[[email protected] ~]# mysql_config_editor set -G test002 -uroot -hlocalhost -P3306 -S /tmp/mysql.sock -p
Enter password:
[[email protected] ~]# mysql_config_editor print -Gtest002
[test002]
user = root
password = *****
host = localhost
socket = /tmp/mysql.sock
port = 3306
查看所有的登陆名称的登陆信息:
[[email protected] ~]# mysql_config_editor print --all
[test001]
user = root
password = *****
host = localhost
socket = /tmp/mysql.sock
port = 3306
[test002]
user = root
password = *****
host = localhost
socket = /tmp/mysql.sock
port = 3306
2.4删除配置:
mysql_config_editor remove --login-path=test
[[email protected] ~]# mysql_config_editor remove --login-path=test002
或者是:
[[email protected] ~]# mysql_config_editor remove -Gtest002
[[email protected] ~]# mysql_config_editor print --all
[test001]
user = root
password = *****
host = localhost
socket = /tmp/mysql.sock
port = 3306
重置配置:
mysql_config_editor reset --login-path=test
2.5、采用默认的登陆方式
[[email protected] ~]#mysql_config_editor set -uroot -p
[[email protected] ~]# mysql_config_editor print --all
[test001]
user = root
password = *****
host = localhost
socket = /tmp/mysql.sock
port = 3306
[client]
user = root
password = *****
登陆截图:
2.6其中可删除项介绍
-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.7、远程登陆其他机器的MySQL
若要登录其他主机、其他端口,或者添加其他额外参数,直接在上述命令后添加即可
shell>mysql --login-path=test -h host1 -P port1 #登录host1:poet1上的MySQL
shell>mysql --login-path=test -h host1 -P port1 test_db #登录host1:poet1上的MySQL中的test_db库
参考地址:
http://dev.mysql.com/doc/refman/5.7/en/mysql-config-editor.html
以上是关于MySQL之mysql_config_editor使用的主要内容,如果未能解决你的问题,请参考以下文章
MySQL 通过mysql_config_editor更安全的登录数据库