Question Comment ignorer les erreurs avec mysqldump?


Lorsque je vide une base de données, je reçois

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

et puis le dumping cesse juste.

Comment faire pour que mysqldump continue quand il rencontre ce genre de problèmes? 10 minutes de Google n'a offert aucune aide.

Voici la commande que j'ai utilisée:

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

11
2017-08-17 16:18


origine




Réponses:


homme mysqldump

-f, --force         Continue even if we get an sql-error.

25
2017-08-17 16:22



D'accord, je pensais que cela échouait, mais apparemment cela a fonctionné. Le vidage semble être terminé, mais les erreurs sont survenues vers la fin. Cela donne l'impression que les erreurs ont provoqué l'échec du vidage. - Chad Johnson
Il a déjà fourni l'option --force dans la commande qu'il nous a montrée. - Zoredache
désolé n'a pas réalisé. - chocripple
@Chad Johnson, une personne pourrait argumenter que si vous ne pouvez pas obtenir une sauvegarde propre sans utiliser --force, votre sauvegarde échouera. L'option force supprime les erreurs pouvant être importantes. Veuillez ne pas utiliser --force dans un script de sauvegarde sur lequel vous compterez. - Zoredache
C'est simplement pour que je puisse obtenir une sauvegarde d'une base de données à utiliser localement. Rien d'important. - Chad Johnson


AFIAK, vous ne pouvez pas. Vous avez besoin d'assez de privilèges pour courir mysqldump. Pourquoi n'as-tu pas donné execute privilège à l'utilisateur que courir?


1
2017-08-17 16:22



Parce que mon entreprise m'oblige à passer par un autre département :( - Chad Johnson