代码改变世界

Mysql 安全登陆工具 mysql_config_editor

2019-03-30 21:43  那个,我  阅读(...)  评论(... 编辑 收藏

mysql_config_editor

帮助信息请查看
man mysql_config_editor 或 mysql_config_editor -? 或 mysql_config_editor set -?
该工具会在用户家目录生成二进制文件:.mylogin.cnf
该文件格式由选项组组成,每个选项组被称为login path ,仅包含特定选项: host, user, password, port and socket 用于用户验证。
 

用法:

mysql_config_editor set [command options] Sets user name/password/host name/socket/port for a given login path (section). 
mysql_config_editor remove [command options] Remove a login path from the login file.
mysql_config_editor print [command options] Print all the options for a specified login path.
mysql_config_editor reset [command options] Deletes the contents of the login file.
 

设置 login path

[root@mysql1 ~]# mysql_config_editor set -?

-h, --host=name Host name to be entered into the login file.
-G, --login-path=name Name of the login path to use in the login file. (Default: client)
-p, --password Prompt for password to be entered into the login file.
-u, --user=name User name to be entered into the login file.
-S, --socket=name Socket path to be entered into login file.
-P, --port=name Port number to be entered into login file.

 

如:
mysql_config_editor set -G mypath -u root -p -S /u01/data/mysql5.7.25/mysql.sock
mysql_config_editor set -G user1 -u user1 -p -S /u01/data/mysql5.7.25/mysql.sock
 

显示 login path

mysql_config_editor print --all
mysql_config_editor print -G user1
[root@mysql1 ~]# mysql_config_editor print --all
[client] # 默认 login path
[mypath]
user = root
password = *****
socket = /u01/data/mysql5.7.25/mysql.sock
[mypath1]
user = root
password = *****
socket = /u01/data/mysql5.7.25/mysql.sock
[user1]
user = user1
password = *****
socket = /u01/data/mysql5.7.25/mysql.sock

 

删除 login path

mysql_config_editor remove -G user1
[root@mysql1 ~]# mysql_config_editor remove -G user1
[root@mysql1 ~]# mysql_config_editor print --all
[client]
[mypath]
user = root
password = *****
socket = /u01/data/mysql5.7.25/mysql.sock
[mypath1]
user = root
password = *****
socket = /u01/data/mysql5.7.25/mysql.sock

 

重置 login file

mysql_config_editor reset
[root@mysql1 ~]# mysql_config_editor reset
[root@mysql1 ~]# mysql_config_editor print --all  # 文件已被清空

 

使用 login path

mysql --login-path=mypath
mysqladmin  --login-path=mypath
[root@mysql1 ~]# mysqladmin --login-path=mypath status
Uptime: 11918 Threads: 1 Questions: 18 Slow queries: 0 Opens: 106 Flush tables: 1 Open tables: 99 Queries per second avg: 0.001