如何在MySQL控制台中使用环境变量

时间:2019-05-17 16:18:36

标签: mysql

我可以使用环境变量以root用户身份连接到控制台:

mysql -u root -p${MYSQL_ROOT_PASSWORD}

我希望能够在语句中使用其他环境变量

CREATE USER ${MYSQL_USER} IDENTIFIED BY ${MYSQL_USER_PASSWORD};

显然不起作用(或者我为什么要问)。有什么方法可以在控制台中使用环境变量?

1 个答案:

答案 0 :(得分:1)

我认为无法通过MySQL查询访问环境变量。但是您可以在外壳中构造MySQL查询并替换变量。

mysql -e "CREATE USER '{$MYSQL_USER}' IDENTIFIED BY '${MYSQL_USER_PASSWORD}'"

在将其传递给mysql命令之前,shell会将变量替换为字符串。对于更长的查询,您可以使用here-doc:

mysql <<EOF
CREATE USER '{$MYSQL_USER}' 
IDENTIFIED BY '${MYSQL_USER_PASSWORD}'
EOF