Sauvegarder ses procédures stockées avec mysqldump

Une fois n’est pas coutume, un billet qui se lit en 10s :

Pour exporter vos procédures stockées grâce à mysqldump, n’oubliez pas l’option -R. Sans elle votre prochaine restauration risque de vous apporter quelques surprises. Si les triggers sont bien sauvegardés par défaut, il n’en va pas de même pour les procédures stockées.

Ainsi :
mysqldump -umy_user -p MY_DB MY_TABLE1 MY_TABLE2 > /tmp/dump_my_db.sql

… Sauvegardera bien les tables MY_TABLE1 et MY_TABLE2 de la base MY_DB, mais pas les procédures stockées…

L’option -R permet de sauvegarder cette fois vos bases, procédures stockées comprises :

mysqldump -umy_user -p -R MY_DB MY_TABLE1 MY_TABLE2 > /tmp/dump_my_db.sql

Pour ne sauvegarder que vos procédures stockées, utilisez par exemple :

mysqldump –umy_user -p -R –all-databases –no-data –no-create-db –no-create-info > /tmp/dump_proc.sql

mysqldump est riche en options, un petit coup d’oeil sur la doc de temps en temps permet d’exploiter de nouvelles idées.