¿Cómo ignoro los errores con mysqldump?

12

Cuando descargo una base de datos, obtengo

mysqldump: Couldn't execute 'show create table `some_table`': execute command denied to user 'some_user'@'%' for routine 'some_routime' (1370)

y luego el dumping simplemente se detiene.

¿Cómo hago que mysqldump continúe cuando se encuentra con este tipo de problemas? 10 minutos de Google no ha ofrecido ayuda.

Aquí está el comando que usé:

mysqldump -u username -h localhost --port=4406 -p --databases database_name --skip-lock-tables --force > database_name.sql
Chad Johnson
fuente

Respuestas:

27

man mysqldump

-f, --force         Continue even if we get an sql-error.
chocripple
fuente
Bien, pensé que esto estaba fallando, pero aparentemente funcionó. El volcado parece haber terminado, pero los errores ocurrieron hacia el final, por lo que parecía que los errores hicieron que el volcado fallara.
Chad Johnson el
Él ya ha proporcionado la opción --force en el comando que nos mostró.
Zoredache
1
Lo siento, no me di cuenta.
chocripple
1
@Chad Johnson, una persona podría argumentar que si no puede obtener una copia de seguridad limpia sin usar --force, entonces su copia de seguridad falló. La opción de forzar suprimirá errores que pueden ser importantes. No utilice --force en un script de respaldo del que dependerá.
Zoredache
Esto es solo para que pueda obtener un volcado de una base de datos para trabajar localmente. Nada importante.
Chad Johnson
1

AFIAK, no puedes. Necesita suficientes privilegios para ejecutar mysqldump. ¿Por qué no le dio executeprivilegios al usuario que se ejecuta?

quanta
fuente
2
Porque mi compañía me obliga a pasar por otro departamento :(
Chad Johnson