繁体   English   中英

bash脚本中的mysql密码警告

[英]Mysql password warning in bash script

我目前正在通过bash运行mysql。 但是它返回错误:

Using a password on the command line interface can be insecure.

有哪些安全方法可以实现这一目标? 如何在没有此警告的情况下正确调用mysql?

#!/bin/bash/
user=test
password=test
database=test

mysql --user='$user' --password='$password' --database='$database' --execute='DROP DATABASE $user; CREATE DATABASE $database;'

结果

Warning: Using a password on the command line interface can be insecure.

你命令打开一个mysql会话作为参数传递mysql密码(我在白天看到这个消息十分之一)。

不要将密码放在命令行上,而是创建一个~/.my.cnf文件,并将密码放在那里。 该文件可以为任何命令行选项提供默认值。 例如,你可以把它放在其中:

[client]
database = test
user = test
password = test

然后你可以运行:

mysql --execute='DROP DATABASE $user; CREATE DATABASE $database;'

确保文件的权限受到限制,因此未经授权的用户无法看到密码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM