Sto usando un database MySql con un programma Java, ora voglio dare il programma a qualcun altro.
Come esportare la struttura del database MySql senza i dati in essa contenuti, solo la struttura?
Sto usando un database MySql con un programma Java, ora voglio dare il programma a qualcun altro.
Come esportare la struttura del database MySql senza i dati in essa contenuti, solo la struttura?
Risposte:
Puoi fare con l' --no-dataopzione con il comando mysqldump
mysqldump -u root -p --no-data dbname > schema.sql
--single-transactionopzione se non vuoi o non puoi fare i blocchi della tabella.
CREATE DATABASEcomando. Per includere, sostituire dbnamecon --databases dbname(stenografia:) -B dbname. Quindi per importare su un altro server, utilizzaremysql -u root -p < schema.sql
Sì, puoi usare mysqldumpcon l' --no-dataopzione:
mysqldump -u user -h localhost --no-data -p database > database.sql
puoi anche estrarre una singola tabella con l' --no-dataopzione
mysqldump -u user -h localhost --no-data -p database tablename > table.sql
È possibile utilizzare l'opzione -d con il comando mysqldump
mysqldump -u root -p -d databasename > database.sql
Attenzione però che l'opzione --no-data non includerà la definizione della vista. Quindi se hai una vista come quella che segue crea la vista v1 seleziona a. idAS id,
a. created_dateAS created_date
da t1; con l'opzione --no-data, la definizione della vista verrà modificata in seguito alla vista di creazione v1 selezionare 1 AS id, 1 AScreated_date
È possibile utilizzare MYSQL Administrator Tool gratuitamente http://dev.mysql.com/downloads/gui-tools/5.0.html
troverai molte opzioni per esportare il tuo DataBase MYSQL
Nel caso in cui si utilizzi IntelliJ, è possibile abilitare la vista Database (Visualizza -> Finestra Strumenti -> Database)
All'interno di quella vista connettiti al tuo database. Quindi è possibile fare clic con il pulsante destro del mouse sul database e selezionare "Copia DDL". Altri IDE possono offrire una funzione simile.

Se si desidera eseguire il dump di tutte le tabelle da tutti i database e senza dati (solo strutture di database e tabelle) è possibile utilizzare:
mysqldump -P port -h hostname_or_ip -u username -p --no-data --all-databases > db_backup.sql
Questo produrrà un file .sql che puoi caricare su un server mysql per creare un nuovo database. I casi d'uso per questo non sono molti in un ambiente di produzione, ma lo faccio su base settimanale per ripristinare i server collegati a siti Web dimostrativi, quindi qualunque cosa facciano gli utenti durante la settimana, la domenica tutto torna a "nuovo": )
shell> mysqldump --no-data --routines --events test> dump-defs.sql
mysqldumpè la risposta migliore. L'amministratore di MySQL viene abbandonato e MySQL Workbench è ancora piuttosto difettoso.