Standardmäßig mysqldump erstellt immer CREATE DATABASE IF NOT EXISTS db_name; -Anweisung am Anfang der Dump-Datei.
[BEARBEITEN ] Ein paar Dinge über mysqldump Datei und ihre Optionen:
--all-databases , -A
Sichern Sie alle Tabellen in allen Datenbanken. Dies ist dasselbe wie die Verwendung von --databases Option und Benennen aller Datenbanken auf der Befehlszeile.
--add-drop-database
Fügen Sie eine DROP DATABASE hinzu -Anweisung vor jedem CREATE DATABASE Erklärung. Diese Option wird normalerweise in Verbindung mit --all-databases verwendet oder --databases Option, weil kein CREATE DATABASE Anweisungen werden geschrieben, es sei denn, eine dieser Optionen ist angegeben.
--databases , -B
Dump mehrere Datenbanken. Normalerweise mysqldump behandelt das erste Namensargument in der Befehlszeile als Datenbanknamen und die folgenden Namen als Tabellennamen. Mit dieser Option werden alle Namensargumente als Datenbanknamen behandelt. CREATE DATABASE und USE -Anweisungen werden vor jeder neuen Datenbank in die Ausgabe aufgenommen.
--no-create-db , -n
Diese Option unterdrückt das CREATE DATABASE Anweisungen, die ansonsten in der Ausgabe enthalten sind, wenn die --databases oder --all-databases Option ist gegeben.
Vor einiger Zeit gab es eine ähnliche Frage, ob eine solche Anweisung am Anfang der Datei (für XML-Dateien) nicht vorhanden ist. Der Link zu dieser Frage ist hier .
Um Ihre Frage zu beantworten:
- Wenn Sie eine Datenbank zum Sichern haben, sollten Sie die
--add-drop-databasehaben Option in IhremmysqldumpAussage. - Wenn Sie mehrere Datenbanken zum Sichern haben, sollten Sie die Option
--databasesverwenden oder--all-databasesundCREATE DATABASESyntax wird automatisch hinzugefügt
Weitere Informationen finden Sie im MySQL-Referenzhandbuch