Использование переменной для вызова MySQL в сценарии оболочки

Я создаю сценарий, который можно развернуть для нескольких администраторов, которые смогут запускать его со своими учетными данными.

Однако я получаю ошибку Access Denied от mysql. Кажется, мне кажется, что я не передаю имя пользователя команде MySQL:

Используя этот скрипт:

set dbUser = "myusername"
set dbPass = "mypassword"
mysql --username=$dbUser --password=$dbPass --database="mydbname" -e "SELECT * FROM sometable"

ОШИБКА 1044 (42000): доступ к базе данных для пользователя ''@'localhost' запрещен

Странно, если я ввожу имя пользователя и пароль MySQL непосредственно в команду MySQL и запускаю ее в сценарии оболочки, она работает нормально.

mysql --username="myusername"--password="mypass" --database="mydbname" -e "SELECT * FROM sometable"

1 ответ

Решение

За баш... не хочешь -


dbUser=myusername
dbPass=mypassword
mysql --username=$dbUser --password=$dbPass --database="mydbname" -e "SELECT * FROM sometable"

Другие вопросы по тегам