我有一个登录到MySQL并创建数据库的bash脚本。它有一个序列,请求MySQL凭证(用户名和密码),然后执行
read username
read password
read databasename
mysql -u$username -p$password -e "CREATE DATABASE $databasename;"每当我运行此脚本时,都会收到警告“在命令行界面上使用密码可能不安全”
在需要登录到MySQL然后运行命令的情况下,创建这样的脚本的正确、安全的方法是什么?
发布于 2020-03-16 10:54:44
如果键入ps aux,您可以看到计算机上当前正在执行的每个程序,包括命令行参数。所以..。说“在命令行界面上使用密码可能是不安全的”是一种严重的轻描淡写。
有关其他选项,请参阅documentation。具体地说,创建一个凭证文件,确保它只对您可读,然后使用您的身份验证详细信息填充它。
发布于 2020-03-16 10:53:14
您可以使用mysql_config_editor存储登录详细信息
mysql_config_editor set --login-path=local --host=localhost --user=username --password=password然后运行命令行查询,如下所示:
mysql --login-path=local -e "statement"请参阅此tutorial。对于旧版本的mySQL,还有一种直接编写配置文件的替代方法。
https://stackoverflow.com/questions/60699744
复制相似问题