首页 > 解决方案 > 如何在 bash 脚本中自动设置 mysql 密码?

问题描述

我有一个 bash 脚本,可以打开来自 MySQL 的查询。例如:

$ cat script.sh 
mysql -u joe -D database -p ........ < first_query.sql
mysql -u joe -D database -p ........ < second_query.sql

我的 script.sh 文件中的这 2 行返回查询的结果,但是: 每次我调用“mysql”命令时,如果它有 «-p» 选项,它会要求输入密码 TWICE(因为我调用了 mysql 两次)。我怎样才能避免这种行为?

我尝试将密码作为参数传递,例如:

$ sh script.sh ‘mypassword’ 

并将其存储在变量中并将其放在«-p»选项之后。但它仍然要求输入密码两次。

标签: mysqlbash

解决方案


您可以将密码紧跟在 -p 之后。如果您的密码是“123asd”,则命令将是:

mysql -u user -p123asd

确保 -p 和您的密码之间没有空格。


推荐阅读