【发布时间】:2019-08-24 04:02:39
【问题描述】:
我正在尝试使用数组创建数据库。我正在定义数据库数组。然后从数组项创建数据库。
这是我在 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: [警告] 在命令行界面上使用密码可能不安全。 第 1 行的 ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“[testy1,testy2]”附近使用正确的语法 ---- "bash" "/tmp/chef-script20190402-6843-gm0k0u" 的结束输出---- 跑“bash”“/tmp/chef-script20190402-6843-gm0k0u”返回1 预期的结果是创建 testy1 和 test2 数据库。
【问题讨论】:
-
您可能需要遍历该数据库列表,而不是按原样使用它。
-
谢谢,但我无法作为单个值进行迭代。
-
提示:
database.each do |db|或类似的东西。
标签: mysql ruby bash chef-infra