如何在bash上运行mysql命令?

以下代码在命令行上有效
MysqL --user='myusername' --password='mypassword' --database='mydatabase' --execute='DROP DATABASE myusername; 
CREATE DATABASE mydatabase;'

但是,它并不适用于bash文件

#!/bin/bash
user=myusername
password=mypassword
database=mydatabase

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

我收到以下错误

ERROR 1045 (28000): Access denied for user ‘$user’@’localhost’ (using password: YES)

如何使bash文件作为命令行运行?

使用BASH变量时使用双引号。
MysqL --user="$user" --password="$password" --database="$database" --execute="DROP DATABASE $user; CREATE DATABASE $database;"

BASH不会以单引号扩展变量。

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...