我有以下PHP代码,用于创建数据库,用户和授予用户权限:
$con = mysql_connect("IP.ADDRESS","user","pass");
mysql_query("CREATE DATABASE ".$dbuser."",$con)or die(mysql_error());
mysql_query("grant all on ".$dbuser.".* to ".$dbname." identified by '".$dbpass."'",$con) or die(mysql_error());
Run Code Online (Sandbox Code Playgroud)
我想在shell脚本中执行这些相同的操作.它只是这样的:
MyUSER="user"
MyPASS="pass"
MYSQL -u $MyUSER -h -p$MyPASS -Bse "CREATE DATABASE $dbuser;"
MYSQL -u $MyUSER -h -p$MyPASS -Bse "GRANT ALL ON $DBUSER.* to $DBNAME identified by $DBPASS;"
Run Code Online (Sandbox Code Playgroud)
在postwwwacct(一个cPanel帖子帐户创建钩子脚本)中需要编辑,理想情况下它将是完全独立的
你需要小写"MYSQL"并在之后添加一个主机名,-h并且你混合了单引号和双引号.此外,您还需要设置的值dbname,dbuser并且dbpass与使用一致的大小写:
MyUSER="user"
MyPASS="pass"
HostName="host"
dbName="dbname"
dbUser="dbuser"
dbPass="dbpass"
mysql -u $MyUSER -h $HostName -p$MyPASS -Bse "CREATE DATABASE $dbUser;"
mysql -u $MyUSER -h $HostName -p$MyPASS -Bse "GRANT ALL ON ${dbUser}.* to $dbName identified by $dbPass;"
Run Code Online (Sandbox Code Playgroud)
但我对你的SQL语法没有百分之百的信心.我认为它看起来更像是这样的:
mysql -u $MyUSER -h $HostName -p$MyPASS -Bse "CREATE DATABASE $dbName;"
mysql -u $MyUSER -h $HostName -p$MyPASS -Bse "GRANT ALL ON ${dbName}.* to $dbUser identified by $dbPass;"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7512 次 |
| 最近记录: |