sql >> Base de Datos >  >> RDS >> Mysql

mysqldump con crear línea de base de datos

Por defecto mysqldump siempre crea el CREATE DATABASE IF NOT EXISTS db_name; instrucción al principio del archivo de volcado.

[EDITAR ] Algunas cosas sobre mysqldump archivo y sus opciones:

--all-databases , -A

Volcar todas las tablas en todas las bases de datos. Esto es lo mismo que usar --databases opción y nombrando todas las bases de datos en la línea de comando.

--add-drop-database

Añadir una DROP DATABASE declaración antes de cada CREATE DATABASE declaración. Esta opción generalmente se usa junto con --all-databases o --databases opción porque no CREATE DATABASE las declaraciones se escriben a menos que se especifique una de esas opciones.

--databases , -B

Volcar varias bases de datos. Normalmente, mysqldump trata el primer argumento de nombre en la línea de comando como un nombre de base de datos y los siguientes nombres como nombres de tabla. Con esta opción, trata todos los argumentos de nombre como nombres de base de datos. CREATE DATABASE y USE las declaraciones se incluyen en la salida antes de cada nueva base de datos.

--no-create-db , -n

Esta opción suprime CREATE DATABASE declaraciones que de otro modo se incluyen en la salida si --databases o --all-databases se da la opción.

Hace algún tiempo, hubo una pregunta similar sobre no tener dicha declaración al comienzo del archivo (para el archivo XML). El enlace a esa pregunta está aquí .

Entonces, para responder a tu pregunta:

  • si tiene una base de datos para volcar, debe tener --add-drop-database opción en su mysqldump declaración.
  • si tiene varias bases de datos para volcar, debe usar la opción--databases o --all-databases y el CREATE DATABASE la sintaxis se agregará automáticamente

Más información en Manual de referencia de MySQL