加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

在Shell脚本中创建数据库 – 从PHP转换

发布时间:2020-12-15 19:02:19 所属栏目:安全 来源:网络整理
导读:我有以下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
我有以下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());

我想在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;"

在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;"

但我对你的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;"

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读