как создать mysql пользователя и базу данных в bash скрипте с префиксом - PullRequest
0 голосов
/ 23 апреля 2020

Есть ли в любом случае сделать то же самое с подчеркиванием префикса с тем же именем пользователя.

Например: -

#!/bin/bash
db_user=devdb
db_pass=`openssl rand -hex 16`
mysql -u root <<-EOF
CREATE USER '$db_user'@'localhost' IDENTIFIED BY '$db_pass';
GRANT ALL PRIVILEGES ON  `$db_user\_%` . * TO  '$db_user'@'localhost';
FLUSH PRIVILEGES;
EOF

В приведенном выше сценарии GRANT ALL PRIVILEGES выдает ошибку, и я хочу найти решение для этого .

Если я использую приведенную ниже команду без каталога переменных в mysql root, то ошибки нет.

GRANT ALL PRIVILEGES ON  `devdb\_%` . * TO  'devdb'@'localhost';

Пожалуйста, ответьте, если у кого-то есть решение этой проблемы.

1 Ответ

0 голосов
/ 23 апреля 2020

Попробуйте использовать двойные кавычки вместо одинарных кавычек для переменных.

См .: Разница между одинарными и двойными кавычками в Bash

...