Cómo migrar una base de datos de cPanel a DirectAdmin sin perder datos
¿Te mudas de hosting y necesitas llevar tus bases de datos de cPanel a DirectAdmin sin contratiempos? Es una operación más común de lo que parece y, con la guía adecuada, puedes hacerlo sin perder ni un solo dato. En este artículo te explico, paso a paso y con un lenguaje claro, cómo realizar una migración hosting exitosa, centrándonos en la parte más delicada: las bases de datos MySQL.
No te preocupes si no eres un experto. Aquí no encontrarás comandos crípticos ni jerga innecesaria. Solo instrucciones claras, consejos prácticos y alertas para que no pises ningún cable suelto. Vamos a ello.
Antes de Empezar: Prepara el Terreno
La clave para una migración sin pérdidas no es solo copiar y pegar, sino hacerlo con orden. Antes de tocar nada, asegúrate de tener lo siguiente a mano.
Reúne tus Credenciales
Necesitarás los datos de acceso de tu panel de control cPanel (el origen) y de tu nuevo panel DirectAdmin (el destino).
Esto incluye:
- El nombre de usuario y la contraseña de tu cuenta de hosting en ambos paneles.
- El nombre exacto de las bases de datos que quieres migrar.
- Los usuarios de las bases de datos y sus contraseñas (las que usan tus aplicaciones para conectarse).
Haz una Copia de Seguridad (Siempre)
Este es el paso más importante, aunque parezca obvio. Antes de cualquier movimiento, realiza una copia de seguridad completa de tu sitio web y, por supuesto, de tus bases de datos. Si algo sale mal durante la importar mysql, tendrás un salvavidas al que volver.
Puedes hacerlo desde el propio cPanel, en la sección "Copias de seguridad" o "Backup". Descarga el archivo completo a tu ordenador. No lo borres hasta que la migración esté 100% verificada.
Fase 1: Exportar MySQL desde cPanel (Tu Punto de Partida)
El primer paso es sacar tus datos de cPanel. Vamos a generar un archivo .sql que contenga toda la estructura y la información de tu base de datos. Es como hacer una foto de todo su contenido.
Accede a phpMyAdmin en cPanel
- Entra en tu panel de cPanel.
- Busca la sección "Bases de Datos" y haz clic en el icono de "phpMyAdmin" (o "Administrar" junto a tu base de datos).
Selecciona y Exporta la Base de Datos
Una vez dentro de phpMyAdmin, sigue estos pasos:
- En el menú lateral izquierdo, verás una lista de tus bases de datos. Haz clic en el nombre de la que quieres migrar. Se cargarán todas sus tablas.
- En la parte superior, haz clic en la pestaña "Exportar".
- Verás dos métodos de exportación: "Rápida" y "Personalizada". Te recomiendo usar "Personalizada" para tener más control. Si la base es muy simple, la "Rápida" también funciona.
- En "Personalizada", asegúrate de que el "Formato" sea "SQL".
- Deja todas las opciones por defecto, pero si quieres ser muy meticuloso, marca la casilla "Agregar DROP TABLE / VIEW / PROCEDURE / FUNCTION" (esto ayuda a sobrescribir tablas existentes si las hubiera en el destino, evitando errores).
- Haz clic en el botón "Continuar" o "Exportar" en la parte inferior.
- Se descargará un archivo con un nombre similar a
tubasededatos.sql. Guárdalo en un lugar seguro y fácil de encontrar.
[TIP]: Si tu base de datos es muy grande (más de 100 MB), la exportación puede dar problemas de tiempo de espera. En ese caso, puedes usar la opción "Exportar" con el método "Rápido" o, mejor aún, pedir a tu proveedor de hosting que te genere una copia de seguridad completa de la base de datos directamente desde el servidor.
Fase 2: Crear el Espacio en DirectAdmin
Ahora vamos a preparar el terreno en tu nuevo servidor. DirectAdmin necesita que la base de datos y el usuario existan antes de poder importar los datos.
Crea la Base de Datos y el Usuario
- Accede a tu panel de DirectAdmin.
- Busca la sección "Cuenta" o "Administración de Cuenta" y haz clic en "Bases de Datos MySQL" (o "MySQL Management").
- Verás un formulario para crear una nueva base de datos. Rellena los campos:
- Nombre de la base de datos: DirectAdmin suele añadir un prefijo (el nombre de tu usuario) automáticamente. Escribe el nombre que quieras, por ejemplo,
mibasededatos. El nombre final será algo comotusuario_mibasededatos. - Usuario de la base de datos: Crea un nombre de usuario para esta base, por ejemplo,
miusuario. El nombre final serátusuario_miusuario. - Contraseña: Elige una contraseña segura. DirectAdmin te ofrece un generador, úsalo.
- Nombre de la base de datos: DirectAdmin suele añadir un prefijo (el nombre de tu usuario) automáticamente. Escribe el nombre que quieras, por ejemplo,
- Haz clic en "Crear".
Asigna los Privilegios al Usuario
DirectAdmin normalmente te permite asignar los privilegios en el mismo paso de creación. Asegúrate de marcar "TODOS LOS PRIVILEGIOS" (ALL PRIVILEGES) para que la aplicación que uses (WordPress, Joomla, etc.) pueda funcionar sin restricciones.
Si no los viste, puedes editarlos después desde la lista de bases de datos, haciendo clic en el icono de "lápiz" o "editar" junto a tu nueva base de datos.
[INFO]: En DirectAdmin, el nombre de la base de datos y el usuario tendrán un prefijo con tu nombre de usuario de hosting. No te confundas, es normal. Cuando más adelante tengas que configurar tu aplicación, deberás usar el nombre completo, incluyendo ese prefijo.
Fase 3: Importar MySQL en DirectAdmin (El Corazón de la Migración)
Ya tienes el archivo .sql de cPanel y tu nueva base de datos vacía en DirectAdmin. Ahora toca el momento crucial: transferir los datos.
Accede a phpMyAdmin en DirectAdmin
- En tu panel de DirectAdmin, busca el icono de "phpMyAdmin", normalmente dentro de la sección de "Bases de Datos" o en el menú principal.
- Se abrirá una nueva ventana. Si te pide usuario y contraseña, usa los que acabas de crear para la base de datos (con el prefijo completo).
Importa tu Archivo SQL
- En phpMyAdmin, en el menú lateral izquierdo, haz clic en el nombre de la base de datos que acabas de crear.
- Ve a la pestaña "Importar" en la parte superior.
- Haz clic en el botón "Elegir archivo" o "Seleccionar archivo" y busca el archivo
.sqlque exportaste desde cPanel. - En la parte inferior, deja las opciones por defecto, especialmente el formato SQL.
- Haz clic en "Continuar" o "Importar".
- Espera a que el proceso termine. Verás un mensaje de éxito indicando que la consulta se ha ejecutado correctamente.
[WARNING]: Si tu archivo .sql es muy grande, la importación a través de phpMyAdmin puede fallar por límites de tiempo o de tamaño de archivo. Si esto ocurre, no te desesperes. Tienes alternativas que veremos más adelante.
Fase 4: Verifica que Todo Esté en Orden
La migración no ha terminado hasta que confirmas que los datos están completos y la aplicación funciona.
Compara el Número de Tablas y Registros
- En phpMyAdmin de DirectAdmin, haz clic en tu base de datos importada.
- En la pestaña "Estructura", verás la lista de tablas. Compara el número total de tablas con el que tenías en tu base de datos original en cPanel.
- Haz clic en cada tabla para ver su número de registros. Un vistazo rápido a las tablas más importantes (como
wp_usersowp_postsen WordPress) te dará una buena idea de si la importación fue completa.
Actualiza tus Archivos de Configuración
Este es un paso que muchos olvidan. Tu aplicación (WordPress, PrestaShop, etc.) tiene un archivo de configuración que guarda la información de la base de datos. Deberás actualizarlo con los nuevos datos de DirectAdmin.
- En WordPress, este archivo es
wp-config.phpy está en la raíz de tu sitio. - Deberás cambiar las constantes
DB_NAME,DB_USER,DB_PASSWORDy posiblementeDB_HOST(aunque normalmente eslocalhost).
[INFO]: Si no estás seguro de cómo editar este archivo, puedes hacerlo desde el administrador de archivos de DirectAdmin. Busca la carpeta public_html y dentro de ella, el archivo wp-config.php. Haz clic derecho y selecciona "Editar".
Prueba tu Sitio Web
Accede a tu dominio (si ya apunta al nuevo servidor) o a una URL temporal que te haya dado tu proveedor. Navega por tu web, inicia sesión, crea un post de prueba... Asegúrate de que todo funciona con normalidad.
Solución de Problemas Comunes: FAQ
¿Qué hago si la importación falla por tamaño del archivo?
Este es el error más común. La solución es usar una herramienta más potente que phpMyAdmin.
Usa la Línea de Comandos (SSH)
Si tienes acceso SSH a tu servidor DirectAdmin, puedes usar el cliente de MySQL directamente. Es mucho más rápido y no tiene límites de tamaño.
- Conéctate por SSH a tu servidor.
- Navega hasta el directorio donde subiste tu archivo
.sql(por ejemplo,public_html). - Ejecuta el siguiente comando, reemplazando los datos con los tuyos:
mysql -u tusuario_tuusuario -p tusuario_tubasededatos < tubasededatos.sql
Te pedirá la contraseña del usuario de la base de datos. Escríbela y presiona Enter. El proceso comenzará y verás que el cursor parpadea hasta que termine.
¿Y si no tengo acceso SSH?
Puedes intentar dividir tu archivo .sql en partes más pequeñas usando un editor de texto avanzado o herramientas online, e importarlas una por una. Es un poco tedioso, pero funciona.
¿Puedo migrar las bases de datos con un plugin o herramienta de migración?
Sí, existen herramientas como All-in-One WP Migration (para WordPress) que facilitan mucho el proceso. Sin embargo, aprender a hacerlo manualmente te da un control total y te sirve para cualquier tipo de aplicación, no solo WordPress. Además, a veces estas herramientas tienen problemas con servidores muy restrictivos.
¿Qué pasa con las contraseñas de los usuarios de la base de datos?
Las contraseñas de las bases de datos no se migran en el archivo .sql. Ese archivo contiene los datos de las tablas, pero los usuarios y sus permisos se configuran en el panel de control. Por eso es crucial crear el usuario y asignarle los privilegios en DirectAdmin antes de importar.
¿Necesito cambiar algo en el archivo wp-config.php si uso el mismo nombre de base de datos?
Sí, aunque hayas creado la base de datos con el mismo nombre en DirectAdmin, el prefijo del usuario de hosting se añade automáticamente. Por lo tanto, el nombre final de la base de datos en DirectAdmin será tunuevousuario_tubasededatos, mientras que en cPanel podía ser tuantiguousuario_tubasededatos. Deberás actualizar DB_NAME y DB_USER en wp-config.php con los nuevos nombres completos.
Consejos Extra para una Migración sin Dolor
- Realiza la migración en horas de bajo tráfico: Si tu web tiene visitas constantes, hazlo de madrugada o en un momento de poca afluencia para minimizar el impacto de una posible caída temporal.
- No borres nada del servidor antiguo hasta que todo funcione en el nuevo: Mantén tu cPanel intacto como plan de respaldo hasta que estés 100% seguro de que la nueva web funciona perfectamente.
- Revisa los correos electrónicos: Si tu migración incluye cuentas de correo, asegúrate de transferir también los buzones y sus contenidos. La migración de bases de datos no cubre esto.
- Si tienes dudas, contacta con tu proveedor: Tanto tu antiguo como tu nuevo proveedor de hosting pueden ayudarte. No dudes en abrir un ticket de soporte si te sientes atascado.
[TIP]: Si tu nuevo hosting usa un panel como Syspanel (el antiguo HestiaCP), el proceso es muy similar. Solo tienes que acceder a través del puerto 2106 (por ejemplo, https://tudominio.com:2106) y buscar la sección de "Bases de Datos". La mecánica de crear la base, el usuario y luego importar el archivo SQL desde phpMyAdmin es prácticamente idéntica a la de DirectAdmin.
Conclusión
Migrar una base de datos de cPanel a DirectAdmin no tiene por qué ser una pesadilla. Siguiendo estos pasos, con paciencia y verificando cada etapa, puedes lograrlo sin perder ni un solo dato. Recuerda: la preparación es tu mejor aliada y la verificación final es obligatoria.
La próxima vez que te enfrentes a una migración hosting, ya sabrás que el proceso de exportar mysql e importar mysql es solo cuestión de seguir un orden lógico. ¡Mucha suerte con tu mudanza digital!
