为什么做
因为在MySQL命令行涉及到明文密码会被审计,所以需要使用脚本来执行一些明文密码的sql,例如创建用户等sql。
脚本内容
#!/bin/bash
#防止数据库明文密码展示
#注意查看mysql客户端的环境变量
#base64密码解密
passwd=$(printf "%s" eWphejkxYit3bA== | base64 -d)
mysql -uadmin -pGta@2019 -h 10.12.0.111 -e "grant all on *.* to 'user11'@'%' identified by '$passwd' ;"
报错信息如下:
ERROR 1045 (28000) at line 1: Access denied for user 'admin'@'%' (using password: YES)
grant语句换成其他sql则可以执行
#!/bin/bash
#防止数据库明文密码展示
#注意查看mysql客户端的环境变量
passwd=$(printf "%s" eWphejkxYit3bA== | base64 -d)
mysql -uadmin -p -h 10.12.0.111 -e "select 1 ;show databases; "
Enter password:
+---+
| 1 |
+---+
| 1 |
+---+
+---------