如何在bash脚本中授予MySQL权限?

我需要从bash脚本中为数据库授予权限.有些参数是变量形式,比如用户名和密码. mysql shell中的命令如下所示:

GRANT ALL ON *.* TO "$user"@localhost IDENTIFIED BY "$password";

…除了$user和$password将被其值替换.

有没有办法在bash脚本中执行这样的命令?

谢谢!

解决方法:

你去:)

#!/bin/bash

MYSQL=`which mysql`
EXPECTED_ARGS=3

Q1="USE $1;"
Q2="GRANT ALL ON *.* TO '$1'@'localhost' IDENTIFIED BY '$2';"
Q3="FLUSH PRIVILEGES;"
SQL="${Q1}${Q2}${Q3}"

if [ $# -ne $EXPECTED_ARGS ]
then
  echo "Usage: $0 dbname dbuser dbpass"
  exit $E_BADARGS
fi

$MYSQL -uroot -p -e "$SQL"

相关文章

用的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补全...