Exportar solo procedimientos almacenados con phpmyadmin
A menudo nos encontramos con que hemos creado algunas o muchos procedimientos almacenados en nuestra base de datos (BD) y cambiamos de servidor, lo más fácil es exportar el mysql desde cpanel o de phpmyadmin, pero luego nos damos con la sorpresa que los procedimientos almacenados no se copiaron, así que esta es una solución para eso.
PASOS:
- Ir a a pestaña exportar
- Elegir Modo de exportación: Personalizado
- Deseleccionar todas las tablas
- Opciones específicas al formato: Estructura
- En Opciones de creación de objetos
que solo quede activo:
Agregar sentencia DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT
Agregar sentencia CREATE PROCEDURE / FUNCTION / EVENT
- Clic en botón Continuar y se descargará un archivo SQL.
- Abrir ese archivo con un editor de texto sin formato.
- Buscar en cada procedimiento: DEFINER=`NombreUsuario`@`localhost`
- Reemplazar NombreUsuario con el respectivo nombre de usuario de la nueva base de datos, a veces los desarrolladores cuando exportan las BD crean otro nombre de usuario, así que fijarse bien, si es el mismo dejarlo como está.
- Cambiar localhost por la IP o por el símbolo %, esto depende de la BD de destino, por ejemplo cpanel usa localhost, google cloud sql usa % entre otros.
Luego desde tu base de datos nueva, importar el archivo sql y listo.
PASOS:
- Ir a a pestaña exportar
- Elegir Modo de exportación: Personalizado
- Deseleccionar todas las tablas
- Opciones específicas al formato: Estructura
- En Opciones de creación de objetos
que solo quede activo:
Agregar sentencia DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT
Agregar sentencia CREATE PROCEDURE / FUNCTION / EVENT
- Clic en botón Continuar y se descargará un archivo SQL.
- Abrir ese archivo con un editor de texto sin formato.
- Buscar en cada procedimiento: DEFINER=`NombreUsuario`@`localhost`
- Reemplazar NombreUsuario con el respectivo nombre de usuario de la nueva base de datos, a veces los desarrolladores cuando exportan las BD crean otro nombre de usuario, así que fijarse bien, si es el mismo dejarlo como está.
- Cambiar localhost por la IP o por el símbolo %, esto depende de la BD de destino, por ejemplo cpanel usa localhost, google cloud sql usa % entre otros.
Luego desde tu base de datos nueva, importar el archivo sql y listo.
Comentarios
Publicar un comentario