657 votes

Schéma d'exportation MySql sans données

J'utilise une base de données MySql avec un programme Java, et je veux maintenant donner le programme à quelqu'un d'autre.

Comment exporter la structure d'une base de données MySql sans les données qu'elle contient, juste la structure ?

7voto

Mamta Satoor Points 41

Attention cependant, l'option --no-data n'inclura pas la définition de la vue. Donc si vous avez une vue comme la suivante

create view v1 
 select `a`.`id` AS `id`,
 `a`.`created_date` AS `created_date` 
from t1;

avec l'option --no-data, la définition de la vue sera modifiée comme suit

create view v1
 select 1 AS `id`, 1 AS `created_date`

6voto

Ant1Zykl0n Points 353

Si vous utilisez IntelliJ, vous pouvez activer la vue de la base de données (View -> Tools Window -> Database).

Dans cette vue, connectez-vous à votre base de données. Vous pouvez ensuite cliquer avec le bouton droit de la souris sur la base de données et sélectionner "Copy DDL". D'autres IDE peuvent offrir une fonction similaire.

IntelliJ DDL

4voto

Javier Larroulet Points 2552

Si vous voulez vider toutes les tables de toutes les bases de données et sans données (seulement les structures des bases de données et des tables), vous pouvez utiliser :

mysqldump -P port -h hostname_or_ip -u username -p --no-data --all-databases > db_backup.sql

Cela produira un fichier .sql que vous pourrez charger sur un serveur mysql pour créer une nouvelle base de données. Il n'y a pas beaucoup de cas d'utilisation dans un environnement de production, mais je le fais sur une base hebdomadaire pour réinitialiser les serveurs qui sont liés à des sites Web de démonstration, de sorte que, quoi que les utilisateurs fassent pendant la semaine, le dimanche soir tout revient à "nouveau" :)

4voto

Khaleel Hmoz Points 184

Vous pouvez utiliser l'outil MYSQL Administrator gratuitement. http://dev.mysql.com/downloads/gui-tools/5.0.html

vous trouverez de nombreuses options pour exporter votre base de données MYSQL.

2voto

Ranga Points 491

Ajouter les options --routines et --events pour inclure également les définitions de routines et d'événements stockés.

mysqldump -u <user> -p --no-data --routines --events test > dump-defs.sql

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X