
Escribí un script que hace una copia de seguridad de mi base de datos MySQL y produce un archivo GZIP con el volcado de MySQL de mi base de datos. Me preguntaba si es posible descomprimir el archivo GZIP y restaurar la base de datos con un solo comando.
Algo como esto:
mysql -u user -h host -ppass database < gzip -c database.backup
Pero esto no parece funcionar. ¿Alguna sugerencia?
Yo uso el siguiente comando:
mysqldump -u user -h host -ppass database | gzip -9 > database.backup
El error que me sale es: -bash: gzip: No such file or directory;
lo cual a mi parecer indica que no reconoce gzip como comando o algo así
Respuesta1
Estás usando dos comandos, por lo que debes usar una tubería y no una redirección. Yo uso esto:
gunzip < file.gz | mysql <parameters>
Respuesta2
Normalmente esto debería funcionar. ¿Está gzip instalado y disponible en la variable PATH? (Puedes probarlo con el comando "cuál gzip"
mysqldump -u user -h host -ppass database | gzip -9 > database.backup
pero usaría como archivo de respaldo el sufijo .gz
Tu también puedes probar
mysqldump -u user -h host -ppass *--database* "db_name" | gzip -9 > "db_backup".backup.gz
Recientemente escribí un script para hacer una copia de seguridad comprimida de mis bases de datos.