MySQL去除密码登录告警
背景
MySQL在命令行输入密码时会提示mysql: [Warning] Using a password on the command line interface can be insecure.
,在某些时候会干扰取值。
解决方法:
使用mysql_config_editor
可以解决这一问题。
login-path是从MySQL5.6开始支持的特性,借助mysql_config_editor
工具可以将登陆MySQL的认证信息加密存放在.mylogin.cnf
文件。之后,MySQL客户端可以通过读取该加密信息进行登陆。
示例:
[root@localhost mysql]# mysql_config_editor set --login-path=db_admin --host=192.168.1.6 --user=root --password
Enter password: # 输入密码
- 参数
–login-path=name 登陆信息名称
–host=name 登陆地址
–password 在登陆文件中添加密码(该密码会被mysql_config_editor自动加密)
–user 用户名
–port=name 端口
–socket=name sock文件
- 查看
# 显示指定名称的登陆信息
mysql_config_editor print --login-path=test
# 显示所有登陆信息
mysql_config_editor print --all
示例:
[root@localhost mysql]# mysql_config_editor print --all
[db_admin]
user = root
password = *****
host = 192.168.1.6
[root@localhost mysql]# mysql_config_editor print --login-path=db_admin
[db_admin]
user = root
password = *****
host = 192.168.1.6
- 删除配置
mysql_config_editor remove --login-path=test
- 登陆
[root@localhost mysql]# mysql --login-path=db_admin
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10222
Server version: 5.7.37-log MySQL Community Server (GPL)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
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>