Шеф-повар создает массив базы данных - PullRequest
0 голосов
/ 02 апреля 2019

Я пытаюсь создать базу данных с массивом. Я определяю массив базы данных. И затем создаю базу данных из элементов массивов.

Это мой рецепт шеф-повара для создания базы данных в mysql.

array-  database=["testy1","testy2"]
script 'set Create database ' do
  interpreter 'bash'
  user 'root'
  cwd '/tmp'
  code <<-EOH

 mysql -uroot -p\'#{pw}\' -Be\ "CREATE DATABASE #{database}"
 EOH
  not_if "mysql -u root -p\'#{pw}\' -Be\ 'SHOW DATABASES' | grep #{database};"
end

STDERR: mysql: [Предупреждение] Использование пароля в интерфейсе командной строки может быть небезопасным.ОШИБКА 1064 (42000) в строке 1: у вас есть ошибка в вашем синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы найти правильный синтаксис для использования рядом с '[testy1, testy2]' в строке 1 ---- Конечный вывод "bash" "/ tmp / chef-script20190402-6843-gm0k0u" ---- Ран "bash" "/ tmp / chef-script20190402-6843-gm0k0u" вернул 1 Ожидаемый результат - создание базы данных testy1 и test2.

1 Ответ

0 голосов
/ 04 апреля 2019

хотя база данных поваренной книги устарела, вы можете попробовать и посмотреть, решит ли она вашу боль.В документации chef есть учебное пособие для создания поваренной книги веб-приложения , в которой используется поваренная книга базы данных.

относительно вашей проблемы, вам следует создать конфигурацию клиента mysql (my.cnf) ,что позволит вам запустить команду mysql без указания учетных данных (имя пользователя и пароль).

...