WordPress: Migrar base de datos a un nuevo servidor
Migrar la base de datos de WordPress a un nuevo servidor puede sonar a una tarea de expertos, pero con esta guía paso a paso verás que es más sencillo de lo que parece. Ya sea que estés cambiando de hosting, mejorando tu plan o simplemente reorganizando tus proyectos, este tutorial te llevará de la mano para que lo hagas sin perder información ni romper tu sitio.
Vamos a dividir el proceso en dos grandes partes: primero, exportar tu base de datos desde el servidor actual, y luego importarla en el nuevo servidor. Además, incluiremos algunos ajustes finales para que todo funcione a la perfección.
¿Qué necesitas antes de empezar?
Antes de tocar cualquier archivo, asegúrate de tener a la mano lo siguiente:
- Acceso al panel de control del servidor actual (cPanel, Syspanel, Plesk, o similar). Recuerda que si usas Syspanel (antes conocido como HestiaCP), el acceso es por el puerto 2106 (ejemplo:
https://tu-dominio.com:2106). - Acceso al panel de control del nuevo servidor.
- Los datos de conexión a ambas bases de datos: nombre de la base, usuario y contraseña. Normalmente los encuentras en el archivo
wp-config.phpde tu instalación de WordPress. - Un editor de texto plano (como Notepad++, Sublime Text o incluso el Bloc de notas) para hacer cambios en archivos.
- Un respaldo completo de tu sitio (archivos y base de datos) por si algo sale mal. Nunca está de más tener un plan B.
[WARNING] No modifiques ningún archivo de WordPress directamente en el servidor en producción sin antes hacer una copia de seguridad. Un error pequeño puede dejar tu sitio offline.
Paso 1: Exportar la base de datos desde el servidor actual
Este es el primer paso para migrar base de datos de WordPress. La idea es obtener un archivo .sql con toda la información de tu sitio: entradas, páginas, usuarios, comentarios, configuraciones de plugins, etc.
Opción A: Usando phpMyAdmin (el método más común)
PhpMyAdmin es una herramienta web que viene incluida en la mayoría de los paneles de control. Aquí te explico cómo usarla:
- Accede a phpMyAdmin desde el panel de tu servidor actual. En cPanel suele estar en la sección "Bases de Datos". En Syspanel, lo encuentras dentro del menú de "Base de datos" o directamente en la URL:
https://tu-servidor.com:2106/phpmyadmin. - Selecciona la base de datos de WordPress en la lista de la izquierda. La reconocerás porque tiene el nombre que pusiste al instalar WordPress (por ejemplo,
wordpress_db). - Haz clic en la pestaña "Exportar" en el menú superior.
- Elige el método de exportación: te recomiendo "Rápido" y formato "SQL". Si quieres más control, puedes usar "Personalizado" y seleccionar solo algunas tablas, pero para una migración completa, el método rápido es suficiente.
- Haz clic en "Continuar" o "Exportar". El navegador descargará un archivo con extensión
.sql. Guárdalo en una carpeta segura en tu computadora.
Opción B: Usando la línea de comandos (SSH)
Si tienes acceso SSH al servidor y te sientes más cómodo con la terminal, puedes exportar la base de datos con un comando como este:
mysqldump -u usuario -p nombre_base_datos > respaldo.sql
Te pedirá la contraseña y luego tendrás el archivo respaldo.sql en el directorio actual. Luego puedes descargarlo vía SFTP o SCP.
[TIP] Si tu base de datos es muy grande (más de 100 MB), el método SSH es más rápido y evita que phpMyAdmin se cuelgue. En Syspanel, puedes habilitar el acceso SSH desde el panel de usuarios.
Paso 2: Crear la base de datos en el nuevo servidor
Ahora que tienes tu archivo .sql, toca preparar el nuevo hogar para tus datos. En el servidor destino, debes crear una base de datos vacía y un usuario con todos los permisos.
En cPanel:
- Ve a la sección "Bases de datos MySQL".
- Crea una nueva base de datos (por ejemplo,
nueva_wp_db). - Crea un usuario (por ejemplo,
usuario_wp) y asígnale una contraseña segura. - Agrega ese usuario a la base de datos y marca todos los privilegios (SELECT, INSERT, UPDATE, DELETE, etc.). En la mayoría de los casos, puedes marcar "Todos los privilegios".
En Syspanel (HestiaCP):
- Ingresa a Syspanel por el puerto 2106 (ejemplo:
https://tu-dominio.com:2106). - Ve a la sección "Base de datos".
- Haz clic en "Agregar base de datos". Se generará automáticamente un nombre y un usuario (por ejemplo,
admin_nombre_base). Anota estos datos, porque los necesitarás después. - Syspanel te mostrará la contraseña generada. Cópiala y guárdala de forma segura.
[INFO] En Syspanel, la base de datos y el usuario se crean juntos. No necesitas hacer pasos adicionales. El nombre suele tener el formato
admin_nombre_que_elijas.
Paso 3: Importar la base de datos en el nuevo servidor
Ya tienes la base de datos vacía y el archivo .sql en tu computadora. Ahora toca llenarla con tus datos.
Opción A: Usando phpMyAdmin en el nuevo servidor
- Accede a phpMyAdmin en el nuevo servidor (recuerda que en Syspanel es a través del puerto 2106).
- Selecciona la base de datos que acabas de crear (debe aparecer en la lista de la izquierda).
- Haz clic en la pestaña "Importar".
- En la sección "Archivo a importar", haz clic en "Seleccionar archivo" y elige el archivo
.sqlque exportaste antes. - Deja las opciones por defecto (juego de caracteres UTF-8, etc.) y haz clic en "Continuar".
- phpMyAdmin procesará el archivo. Si es grande, puede tardar unos minutos. Verás un mensaje de éxito al final.
Opción B: Usando la línea de comandos (SSH) en el nuevo servidor
Si prefieres la terminal, conecta por SSH al nuevo servidor y ejecuta:
mysql -u usuario -p nombre_base_datos < respaldo.sql
Te pedirá la contraseña del usuario de la base de datos. Si todo va bien, no verás errores.
[WARNING] Asegúrate de que el archivo
.sqlesté en el servidor (puedes subirlo con SFTP o SCP). Si lo intentas desde tu computadora local, el comando no funcionará a menos que tengas el cliente MySQL instalado localmente.
Paso 4: Actualizar el archivo wp-config.php
Este paso es crucial. El archivo wp-config.php de tu instalación de WordPress contiene los datos de conexión a la base de datos. Debes modificarlo para que apunte a la nueva base de datos en el nuevo servidor.
- Localiza el archivo
wp-config.phpen la raíz de tu instalación de WordPress. Puedes hacerlo mediante FTP o desde el administrador de archivos del panel de control. - Ábrelo con un editor de texto plano (no uses Word ni Pages, porque pueden añadir caracteres ocultos).
- Busca las siguientes líneas y cámbialas por los datos de tu nueva base de datos:
define('DB_NAME', 'nueva_wp_db'); // El nombre de la base de datos que creaste
define('DB_USER', 'usuario_wp'); // El usuario de la base de datos
define('DB_PASSWORD', 'contraseña'); // La contraseña del usuario
define('DB_HOST', 'localhost'); // Normalmente es 'localhost', pero a veces el hosting te da un host específico (p.ej., 'mysql.tudominio.com')
- Guarda el archivo y súbelo de nuevo al servidor (si lo editaste localmente). Si usas el administrador de archivos del panel, solo guarda los cambios.
[TIP] En Syspanel, a menudo el host de la base de datos es
localhost, pero en algunos planes compartidos puede ser algo comomysql.tudominio.com. Revisa la sección de base de datos de tu panel para confirmar.
Paso 5: Verificar la migración
Ya casi terminamos. Ahora toca comprobar que todo funcione correctamente.
- Accede a tu sitio web en el nuevo servidor. Si todo está bien, deberías ver tu página exactamente como antes.
- Prueba el panel de administración de WordPress: ve a
tunuevodominio.com/wp-admine inicia sesión con tus credenciales habituales. - Revisa algunas páginas y entradas para asegurarte de que los contenidos se muestran correctamente.
- Prueba funcionalidades clave: comentarios, formularios de contacto, tienda (si usas WooCommerce), etc.
Si encuentras errores como "Error al conectar con la base de datos" o páginas en blanco, revisa los datos en wp-config.php. Un error común es escribir mal el nombre de la base de datos o la contraseña.
[WARNING] Si cambiaste la URL del sitio (por ejemplo, de
dominioantiguo.comadominionuevo.com), necesitarás actualizar las URLs en la base de datos. Puedes hacerlo con un plugin como "Better Search Replace" o ejecutando consultas SQL en phpMyAdmin. Te recomiendo que, si es tu caso, busques un tutorial específico sobre "cambiar URL en WordPress después de migrar".
Preguntas frecuentes (FAQ)
¿Puedo migrar solo algunas tablas de la base de datos?
Sí, pero no es recomendable a menos que sepas exactamente lo que haces. WordPress está interconectado, y si omites una tabla (por ejemplo, wp_options), podrías perder configuraciones importantes. Para una migración completa, exporta todas las tablas.
¿Qué hago si mi base de datos es muy grande y phpMyAdmin se queda cargando?
Usa la línea de comandos (SSH) si tienes acceso. También puedes dividir el archivo .sql en partes más pequeñas con herramientas como split en Linux, o usar plugins de WordPress como "WP Migrate DB" que permiten exportar e importar en fragmentos.
¿Necesito cambiar las URLs en la base de datos si solo cambio de servidor (mismo dominio)?
No, si el dominio sigue siendo el mismo, las URLs internas de WordPress (como las de las imágenes o los enlaces) no cambian. Solo necesitas actualizar el wp-config.php con los nuevos datos de conexión.
¿En Syspanel, cómo accedo a phpMyAdmin?
En Syspanel (HestiaCP), puedes acceder a phpMyAdmin desde el panel de base de datos. La URL suele ser https://tudominio.com:2106/phpmyadmin. Si no funciona, revisa la documentación de tu hosting o contacta al soporte.
¿Puedo hacer la migración sin usar phpMyAdmin?
Sí, usando comandos mysqldump y mysql por SSH. También hay plugins de WordPress como "Duplicator" o "All-in-One WP Migration" que automatizan todo el proceso, incluyendo archivos y base de datos. Son ideales si prefieres una solución más guiada.
¿Qué hago si después de la migración veo un error de "base de datos no encontrada"?
Revisa tres cosas: 1) Que el nombre de la base de datos en wp-config.php sea exactamente el que creaste. 2) Que el usuario tenga todos los privilegios sobre esa base de datos. 3) Que el host de la base de datos sea correcto (a veces no es localhost). En Syspanel, el host suele ser localhost a menos que uses un servidor remoto.
Conclusión
Migrar la base de datos de WordPress a un nuevo servidor es un proceso de cuatro pasos: exportar, crear la nueva base, importar y actualizar la configuración. Con las herramientas adecuadas (phpMyAdmin o línea de comandos) y un poco de paciencia, puedes hacerlo sin necesidad de ser un experto. Recuerda siempre tener un respaldo antes de empezar y, si algo sale mal, no dudes en pedir ayuda a tu proveedor de hosting o en foros especializados.
Ahora que ya sabes cómo hacerlo, ¡manos a la obra! Tu sitio estará funcionando en su nuevo hogar en poco tiempo.
