Ambiente
- Ubuntu 12.04 Preciso64
- Chef empresarial
- libros de cocina opscode/mysql
- libros de cocina/base de datos de opscode
- WordPress 3.9
Objetivo
Estoy intentando replicar/clonar mi servidor de producción de Wordpress.
Podría crear un volcado de la base de datos remota.
mysqldump --databases my_database > dump.sql
y restaurar
mysql -u my_user -p -D my_database < dump.sql
He probado esto sin éxito:
mysql_anybots_connection_info = {
:host => 'localhost',
:username => 'my_user',
:password => "my_password"
}
mysql_database "my_database" do
connection mysql_connection_info
sql "source /path/dump.sql;"
end
y esto
mysql_database "my_database" do
connection mysql_connection_info
sql { ::File.open("/pul/dump.sql").read }
action :query
end
¿Cuál funcionó aún menos?
¿Alguna sugerencia?
Respuesta1
Estuve frustrado por esto por algún tiempo, pero finalmente encontré una solución.
En mi situación, el problema fue con "DELIMITER", que es un comando que sólo utiliza el cliente de línea de comandos mysql. No es parte de la API, que es lo que usa la gema mysql.
FUENTE:https://github.com/opscode-cookbooks/database/issues/75
Para restaurar desde el volcado utilizo esta función en la receta:
execute 'restore-databases' do
command "mysql -u root -p#{node['mysql']['server_root_password']} -D databaseName < /path/to_dump.sql"
end