Я пытаюсь автоматизировать процедуру создания пользователей MySQL. Я думал о создании временного файла, который будет содержать операторы создания mysql, то я бы назвал это следующим образом:
mysql -u root -proot < Темп
Но я застрял в синтаксисе mysql: здесь содержимое моего временного файла:
DROP DATABASE IF EXISTS mytestdatabase;
CREATE DATABASE mytestdatabase;
SELECT @password:="my password";
DELETE FROM mysql.user WHERE Host='localhost' AND User='mytestdatabase';
GRANT ALL PRIVILEGES ON mytestdatabase.* TO 'mytestdatabase'@'localhost' IDENTIFIED BY PASSWORD '@password';
FLUSH PRIVILEGES;
Но линия
GRANT ALL PRIVILEGES ON mytestdatabase.* TO 'mytestdatabase'@'localhost' IDENTIFIED BY PASSWORD '@password';
(Хэш пароля должен быть 41-значным шестнадцатеричным числом)
не интерпретируется, как я ожидал бы. Даже если я удаляю одиночные кавычки вокруг тега @password, у меня все еще есть ошибки (синтаксическая ошибка)
Как я могу сделать эту работу?