mysql_config_editor
2018-01-12 11:06 abce 阅读(670) 评论(0) 编辑 收藏 举报mysql_config_editor是MySQL5.6.6中引入的,在5.6.10中正式GA。
借助mysql_config_editor工具将登陆MySQL服务的认证信息加密保存在.mylogin.cnf文件(默认位于用户主目录) 。之后,MySQL客户端工具可通过读取该加密文件连接MySQL,避免重复输入登录信息,避免敏感信息暴露。
.mylogin.cnf和默认的my.cnf文件不同,是不能像my.cnf直接查看其中的加密内容的。
1.mysql_config_editor的语法
mysql_config_editor [program_options] command [command_options]
2.查看帮助
# ./mysql_config_editor --help ./mysql_config_editor Ver 1.0 Distrib 5.6.37, for linux-glibc2.12 on x86_64 Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. MySQL Configuration Utility. Usage: ./mysql_config_editor [program options] [command [command options]] -?, --help Display this help and exit. -v, --verbose Write more information. -V, --version Output version information and exit. Variables (--variable-name=value) and boolean options {FALSE|TRUE} Value (after reading options) --------------------------------- ---------------------------------------- verbose FALSE Where command can be any one of the following : set [command options] Sets user name/password/host name/socket/port for a given login path (section). remove [command options] Remove a login path from the login file. print [command options] Print all the options for a specified login path. reset [command options] Deletes the contents of the login file. help Display this usage/help information.
3.创建一个login-path/profile
# mysql_config_editor set --login-path=abce --user=root -p
其中--login-path表示指定通过mysql客户端登录时的标识
创建结束就可以在用户主目录下看到该profile文件了:
# ls -a ~ |grep cnf .mylogin.cnf
可以根据需要创建多个登陆profile
# mysql_config_editor set --login-path=abce1 --user=root -p # mysql_config_editor set --login-path=abce2 --user=root -p
4.使用profile登陆
# mysql --login-path=abce Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 14 Server version: 5.6.37 MySQL Community Server (GPL) Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
5.查看所有的login-path/profiles
# mysql_config_editor print --all [abce] user = root password = ***** [abce1] user = root password = ***** [abce2] user = root password = *****
6.移除一个login-path/profile
# mysql_config_editor remove --login-path=abce2 # mysql_config_editor print --all [abce] user = root password = ***** [abce1] user = root password = ***** 也可以某个login-path中的部分信息,比如: # mysql_config_editor set --login-path=abce3 --host=localhost # mysql_config_editor print --all [abce] user = root password = ***** [abce1] user = root password = ***** [abce3] host = localhost # mysql_config_editor remove --login-path=abce3 --host # mysql_config_editor print --all [abce] user = root password = ***** [abce1] user = root password = ***** [abce3]