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-databaseopzione nel tuomysqldumpdichiarazione. - se hai più database da scaricare, dovresti usare l'opzione
--databaseso--all-databasese ilCREATE DATABASEla sintassi verrà aggiunta automaticamente
Maggiori informazioni su Manuale di riferimento di MySQL