¿Cómo puedo cambiar rápidamente el nombre de una base de datos MySQL (cambiar el nombre del esquema)?

El manual de MySQL en MySQL cubre esto.

Por lo general, simplemente vuelco la base de datos y la reimporto con un nuevo nombre. Esto no es una opción para bases de datos muy grandes. Aparentemente RENAME {DATABASE | SCHEMA} db_name TO new_db_name; hace cosas malas, sólo existe en un puñado de versiones, y es una mala idea en general.

Esto tiene que funcionar con InnoDB, que almacena las cosas de forma muy diferente a MyISAM.

Tres opciones:

  1. Cree la nueva base de datos, baje el servidor, mueva los archivos de una carpeta de la base de datos a la otra, y reinicie el servidor. Tenga en cuenta que esto sólo funcionará si TODAS sus tablas son MyISAM.

  2. Cree la nueva base de datos, utilice las sentencias CREATE TABLE ... LIKE, y luego utilice las sentencias INSERT ... SELECT * FROM.

  3. Utilice mysqldump y recargue con ese archivo.

Comentarios (2)

MySQL no soporta el cambio de nombre de una base de datos a través de su interfaz de comandos por el momento, pero puede cambiar el nombre de la base de datos si tiene acceso al directorio en el que MySQL almacena sus bases de datos. En las instalaciones por defecto de MySQL, éste suele estar en el directorio Data bajo el directorio donde se instaló MySQL. Localice el nombre de la base de datos que desea renombrar en el directorio Data y renómbrela. Renombrar el directorio podría causar algunos problemas de permisos. Tenga en cuenta.

Nota: Debe detener MySQL antes de poder renombrar la base de datos

Yo recomendaría crear una nueva base de datos (con el nombre que quieras) y exportar/importar los datos que necesites de la antigua a la nueva. Es muy sencillo.

Comentarios (1)

Cuando se cambia el nombre de una base de datos en PHPMyAdmin se crea un volcado, luego se elimina y se vuelve a crear la base de datos con el nuevo nombre.

Comentarios (1)