Standaard mysqldump
creëert altijd de CREATE DATABASE IF NOT EXISTS db_name;
statement aan het begin van het dumpbestand.
[BEWERKEN ] Enkele dingen over de mysqldump
bestand en zijn opties:
--all-databases
, -A
Dump alle tabellen in alle databases. Dit is hetzelfde als het gebruik van de --databases
optie en het benoemen van alle databases op de opdrachtregel.
--add-drop-database
Voeg een DROP DATABASE
toe statement voor elke CREATE DATABASE
uitspraak. Deze optie wordt meestal gebruikt in combinatie met de --all-databases
of --databases
optie omdat er geen CREATE DATABASE
verklaringen worden geschreven, tenzij een van die opties is opgegeven.
--databases
, -B
Dump meerdere databases. Normaal gesproken, mysqldump
behandelt het voornaamargument op de opdrachtregel als een databasenaam en de volgende namen als tabelnamen. Met deze optie behandelt het alle naamargumenten als databasenamen. CREATE DATABASE
en USE
instructies worden opgenomen in de uitvoer voor elke nieuwe database.
--no-create-db
, -n
Deze optie onderdrukt de CREATE DATABASE
instructies die anders in de uitvoer zijn opgenomen als de --databases
of --all-databases
optie wordt gegeven.
Enige tijd geleden was er een soortgelijke vraag over het niet hebben van een dergelijke verklaring aan het begin van het bestand (voor XML-bestand). Link naar die vraag is hier .
Dus om je vraag te beantwoorden:
- als je één database moet dumpen, moet je de
--add-drop-database
hebben optie in uwmysqldump
verklaring. - als je meerdere databases moet dumpen, moet je de optie
--databases
. gebruiken of--all-databases
en deCREATE DATABASE
syntaxis wordt automatisch toegevoegd
Meer informatie op MySQL-referentiehandleiding