web-dev-qa-db-fra.com

Schéma d'exportation MySql sans données

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

Comment exporter la structure de la base de données MySql sans les données qu'il contient, uniquement la structure?

458
Darth Blue Ray

Vous pouvez faire avec l'option --no-data avec la commande mysqldump

mysqldump -u root -p --no-data dbname > schema.sql
882
Daric

Oui, vous pouvez utiliser mysqldump avec l'option --no-data:

mysqldump -u user -h localhost --no-data -p database > database.sql
79
onteria_

vous pouvez également extraire une table individuelle avec l'option --no-data

mysqldump -u user -h localhost --no-data -p database tablename > table.sql
15
PodTech.io

Dumping sans utiliser la sortie.

mysqldump --no-data <database name> --result-file=schema.sql
6
Anders B

Vous pouvez utiliser l'option -d avec la commande mysqldump

mysqldump -u root -p -d databasename > database.sql
5
Rahul Chipad

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

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

3
Khaleel Hmoz

Attention, l'option --no-data n'inclut pas la définition de la vue. Donc, si vous aviez une vue semblable à la suivante créer vue v1, sélectionnez a.id AS id, a.created_date AS created_date à partir de t1; avec l'option --no-data, la définition de la vue sera remplacée par la vue suivante créer vue v1 sélectionner 1 AS id, 1 AS created_date

3
Mamta Satoor

Si vous utilisez IntelliJ, vous pouvez activer la vue Base de données (Affichage -> Fenêtre Outils -> Base de données).

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

IntelliJ DDL

2
Ant1Zykl0n

Pour obtenir le script de création d'une table individuelle:
- sélectionne tout le tableau (avec la touche shift)
- faites un clic droit sur le nom de la table, puis cliquez sur Copier dans le presse-papiers> Créer une déclaration.

2
mias

Si vous souhaitez vider toutes les tables de toutes les bases de données sans données (uniquement les structures de bases de données et de 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. Les cas d'utilisation de ce type ne sont pas nombreux dans un environnement de production, mais je le fais toutes les semaines pour réinitialiser les serveurs liés aux sites Web de démonstration. )

2
Javier Larroulet