2012-02-20 11 views
8

Come posso scaricare ciascuna tabella mysql separatamente con mysqldump?Mysqldumper: scaricare separatamente ogni tabella

Background: Voglio per tracciare quelle discariche con git e utilizzando il pre-commit hook

Esempio: Ho uno schema con 10 tavoli (tabella 1 - tabella 10). ora voglio un file per ogni tabella: table1.sql table2.sql ...

Così come intenzione di questo lavoro?

Snd perché allo stackoverflow non piace la mia domanda?

+0

Che cosa si intende con 'Snd perché StackOverflow non ama la mia domanda' –

+3

http: // stackoverflow.com/questions/3669121/dump-all-mysql-tables-into-separate-files-automagically/6300583 – kenorb

risposta

1
mysqldump -t -u [username] -p test mytable 

scaricherà la tabella 'mytable' dal database 'test'.

Se si desidera automatizzare la procedura, è necessario scrivere uno script, che seleziona le nomi_tabelle dallo schema per voi e applicare la suddetta operazione per ogni tabella. Puoi anche automatizzare le operazioni git.

+0

e come posso automatizzare la procedura? sry, sono nuovo ... –

+1

Dipende dal tuo sistema operativo. Se stai usando Linux - scripting bash probabilmente. – hovanessyan

30

Questo dovrebbe funzionare in una shell:

for x in `mysql --skip-column-names -u [username] -p[password] [dbname] -e 'show tables;'`; do 
    mysqldump -u [username] -p[password] [db name] $x > "$x.sql" 
done 
+1

In realtà la risposta di Naveen Kumar è migliore della mia. –

+5

No, la tua risposta è migliore :) thanx – tasmaniski

5

speranza che questo aiuta

mysqldump --user=dbuser --password --tab=~/output/dir dbname 

si avrà un file tablename.sql contenente lo schema di ogni tabella (create table) e il file tablename.txt contenente i dati.

mysqldump --user=dbuser --password --no-data --tab=~/output/dir dbname 

se si vuole una discarica con lo schema solo, aggiungere il flag --no-dati:

+5

Mi sembra che tu abbia copiato la tua risposta al 100% da http://stackoverflow.com/a/6300583/616443 – j08691

+0

Che ha funzionato per me in OSX, C'è un modo per importare il discarica? –

Problemi correlati