Mysql
 sql >> Database >  >> RDS >> Mysql

mysqldump con crea riga di database

Di default mysqldump crea sempre il CREATE DATABASE IF NOT EXISTS db_name; istruzione all'inizio del file di dump.

[MODIFICA ] Alcune cose su mysqldump file e le sue opzioni:

--all-databases , -A

Scarica tutte le tabelle in tutti i database. È come usare i --databases opzione e nominando tutti i database sulla riga di comando.

--add-drop-database

Aggiungi un DROP DATABASE istruzione prima di ogni CREATE DATABASE dichiarazione. Questa opzione viene in genere utilizzata insieme a --all-databases o --databases opzione perché nessun CREATE DATABASE le istruzioni vengono scritte a meno che non sia specificata una di queste opzioni.

--databases , -B

Scarica diversi database. Normalmente, mysqldump tratta l'argomento del nome sulla riga di comando come un nome di database e i nomi seguenti come nomi di tabelle. Con questa opzione, tratta tutti gli argomenti dei nomi come nomi di database. CREATE DATABASE e USE le istruzioni sono incluse nell'output prima di ogni nuovo database.

--no-create-db , -n

Questa opzione sopprime il CREATE DATABASE istruzioni che sono altrimenti incluse nell'output se --databases o --all-databases opzione è data.

Qualche tempo fa, c'era una domanda simile che chiedeva effettivamente di non avere tale affermazione all'inizio del file (per file XML). Il link alla domanda è qui .

Quindi, per rispondere alla tua domanda:

  • se hai un database da scaricare, dovresti avere il --add-drop-database opzione nel tuo mysqldump dichiarazione.
  • se hai più database da scaricare, dovresti usare l'opzione--databases o --all-databases e il CREATE DATABASE la sintassi verrà aggiunta automaticamente

Maggiori informazioni su Manuale di riferimento di MySQL