Forum Clubic

[mySQL] mysqldump + view - Problème dans l'ordre de création

Bon j’ai un petit problème avec mysqldump quand j’ai des vues sur le serveur … je m’explique :o

J’ai le script d’export suivant sur le serveur à sauvegarder (les données confidentielles ont été remplacées par des *) :


mysqldump -h 127.0.0.1 -P 3306 -u ***** -p***** --allow-keywords --force --opt --quote-names --compress --databases ***** | bzip2 --best --small > *****.sql.bz2

ce code fonctionne très bien et me génère donc un export complet de la base voulus :oui: …

sauf que cette base comporte 2 vues … en soit, pas de problème, sauf que ces vues commencents par ‘g’ et qu’elles font références à des tables commençant par ‘p’ et ‘t’ … hors, visiblement mysqldump exporte dans l’ordre alphabétique, ce qui fait que, lorsque je tente de restaurer le dump sur un autre serveur, il ne peut pas me créer les vues car les tables auxquelles elles font référence n’existe pas encore :neutre: …
(oué je sais, c’est con :paf:)

pour importer, j’utilise la ligne suivante :


mysql -h 127.0.0.1 -P 3306 -u ***** -p***** --compress --force ***** < *****.sql

et l’erreur exact est la suivant :
ERROR 1146 (42S02) at line 604: La table ‘.p’ n’existe pas
ERROR 1146 (42S02) at line 604: La table ‘.t’ n’existe pas

google et la doc mysql n’étant pas très prolixe, je me retourne vers vous pour savoir si vous avec déjà eu le cas, et si vous avez une autre soluce que de nommer mes vues avec un nom commençant par Z :paf:

Hum, il met pas les requêtes de création de vues après?

non, dans le fichier SQL du dump, il les mets dans l’ordre alphabétique des tables :neutre: …