La méthode la plus simple pour tronquer toutes les tables tout en conservant le schéma.
mysqldump -d -uuser -ppass --add-drop-table databasename > databasename.sql
mysql -uuser -ppass databasename < databasename.sql
Je ne sais pas s'il conservera les procédures stockées car elles ne sont pas utilisées là où je travaille, mais je l'utilise régulièrement pour réinitialiser les bases de données.
Le -d
activer mysqldump signifie "ne pas vider les données".
Le --add-drop-table
ajoute une instruction DROP TABLE à chaque CREATE TABLE dans le vidage.