gpt4 book ai didi

mysql - bash shell脚本,创建mysql数据库和用户时遇到问题

转载 作者:行者123 更新时间:2023-11-29 07:35:05 25 4
gpt4 key购买 nike

我有一个 shell 脚本,其中包含以下内容:

#!/bin/sh
mysql -uqgk_user -ppw12345 -e "create database qgk; GRANT ALL PRIVILEGES ON qgk.* TO qgk_user@localhost IDENTIFIED BY 'pw12345' WITH GRANT OPTION;"

如果运行 shell 脚本,我会收到此错误:

manager@xagate:/var/www/.../public_html/...$ sh database_setup.sh 
ERROR 1045 (28000): Access denied for user 'qgk_user'@'localhost' (using password: YES)

我不明白为什么会出现这个问题。任何针对此问题发布可行解决方案的人都可以在其答案中包含他们的 Ripple 地址,以获得 XRP 奖励,以表彰他们对解决此问题的帮助。

最佳答案

这就是我解决这个问题的方法:

http://www.bluepiccadilly.com/2011/12/creating-mysql-database-and-user-command-line-and-bash-script-automate-process

manager@xagate:/var/www$ cat mysql_setup.sh 
#!/bin/bash

EXPECTED_ARGS=3
E_BADARGS=65
MYSQL=`which mysql`

Q1="CREATE DATABASE IF NOT EXISTS $1;"
Q2="GRANT USAGE ON *.* TO $2@localhost IDENTIFIED BY '$3';"
Q3="GRANT ALL PRIVILEGES ON $1.* TO $2@localhost;"
Q4="FLUSH PRIVILEGES;"
SQL="${Q1}${Q2}${Q3}${Q4}"

if [ $# -ne $EXPECTED_ARGS ]
then
echo "Usage: $0 qgk qgk_user PASSWORD"
exit $E_BADARGS
fi

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

然后我必须登录 Webmin,导航到服务器 > MySQL 数据库服务器 > 用户权限 > root@localhost > 重新分配密码。

当执行 mysql_setup.sh 脚本时提示输入密码并输入 root@localhost 用户的密码时,数据库将与 qgk_user 和所选密码一起创建。

谢谢您的帮助,先生:)

关于mysql - bash shell脚本,创建mysql数据库和用户时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31092866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com