¿Cómo migrar una base de datos de un hosting a otro?
¿Te has quedado sin espacio en tu plan de hosting actual o simplemente encontraste un proveedor mejor? Mover tu web a un nuevo servidor puede parecer una tarea de expertos, pero la parte más delicada, la migración de la base de datos, es un proceso muy mecánico que puedes hacer tú mismo siguiendo unos pasos claros.
En esta guía completa, te explicaré cómo migrar una base de datos de un hosting a otro, ya sea que uses cPanel, Plesk o DirectAdmin. No importa si trabajas con WordPress, Joomla o una web a medida; el proceso de exportar MySQL e importar MySQL es prácticamente el mismo. Vamos a dividirlo en fases para que no te pierdas.
¿Qué necesitas antes de empezar?
Antes de tocar nada, asegúrate de tener a mano esta información. Te ahorrará dolores de cabeza:
- Los datos de acceso a la base de datos antigua: El nombre de la base de datos, el usuario y la contraseña. Normalmente los encuentras en un archivo llamado
wp-config.php(en WordPress) oconfiguration.php(en Joomla). - Los datos del nuevo hosting: La IP del servidor o la URL de acceso a tu panel de control (cPanel, Plesk, DirectAdmin o Syspanel).
- Credenciales FTP o SFTP: Por si necesitas subir archivos de forma manual.
- Una copia de seguridad completa de tu web: Por si algo sale mal. Nunca está de más.
[WARNING]
No empieces la migración en horas punta de tráfico. Si tu web es muy visitada, ponla en modo mantenimiento durante el proceso para evitar que los usuarios guarden datos mientras mueves la base.
Paso 1: Exportar la base de datos original (el backup)
El primer paso para migrar una base de datos es sacar una copia exacta de la original. Aquí te explico cómo hacerlo desde los paneles de control más comunes.
Desde cPanel (el más popular)
cPanel es el estándar en la mayoría de hostings compartidos. El proceso es muy visual:
- Inicia sesión en tu cPanel antiguo.
- Busca la sección Bases de Datos y haz clic en phpMyAdmin.
- En la columna de la izquierda, haz clic sobre el nombre de la base de datos que quieres migrar (se seleccionará todo su contenido).
- En la barra superior, haz clic en la pestaña Exportar.
- Elige el método Rápido y el formato SQL. Haz clic en Continuar.
- Se descargará un archivo con extensión
.sql. Guárdalo en una carpeta segura de tu ordenador.
[TIP]
Si tu base de datos es muy grande (más de 50 MB), el método rápido puede fallar. En ese caso, usa el método Personalizado y marca la opción Comprimir con "gzip". Así obtendrás un archivo.sql.gzmucho más ligero.
Desde Plesk
Plesk es otro panel muy usado, sobre todo en servidores VPS. El proceso es igual de sencillo:
- Accede a tu panel de Plesk.
- Ve a Bases de Datos (dentro de la sección de tu dominio).
- Localiza la base de datos que quieres exportar y haz clic en el icono de phpMyAdmin (normalmente un elefante).
- Selecciona la base de datos en la columna izquierda.
- Ve a la pestaña Exportar.
- Elige Rápido y formato SQL. Haz clic en Continuar.
- Descarga el archivo.
Desde DirectAdmin
DirectAdmin es un panel muy eficiente y el proceso es muy similar:
- Entra en DirectAdmin.
- Ve a Administrador de MySQL.
- Haz clic en el icono de phpMyAdmin junto a la base de datos que deseas migrar.
- Selecciona la base de datos en la izquierda.
- Ve a Exportar, elige Rápido y formato SQL.
- Descarga el archivo.
Desde Syspanel (antes HestiaCP)
Si tu hosting usa Syspanel (el nuevo nombre de HestiaCP), recuerda que el acceso se hace por el puerto 2106. El proceso es el mismo que en los anteriores:
- Accede a tu panel:
https://tudominio.com:2106 - Ve a Bases de Datos.
- Localiza tu base de datos y haz clic en phpMyAdmin.
- Selecciona la base de datos, ve a Exportar y descarga el archivo SQL.
Paso 2: Crear la base de datos en el nuevo hosting
Ahora que tienes tu backup, toca preparar el terreno en el nuevo servidor. No puedes importar directamente sobre una base de datos que no existe.
Crear la base de datos en cPanel
- Inicia sesión en tu nuevo cPanel.
- Busca la sección Bases de Datos y haz clic en Bases de Datos MySQL.
- Escribe un nombre para tu nueva base de datos (por ejemplo,
mipagina_nueva) y haz clic en Crear base de datos. - Ve a la sección Usuarios MySQL y crea un nuevo usuario (o usa uno existente). Pon una contraseña segura.
- Ve a Añadir usuario a la base de datos y selecciona tu nuevo usuario y tu nueva base de datos. Marca Todos los privilegios y haz clic en Hacer cambios.
[INFO]
Anota el nombre de la base de datos, el usuario y la contraseña que acabas de crear. Los necesitarás más adelante para configurar tu web.
Crear la base de datos en Plesk
- En Plesk, ve a Bases de Datos.
- Haz clic en Añadir base de datos.
- Ponle un nombre (por ejemplo,
db_nueva). - Selecciona el tipo de base de datos (MySQL, normalmente).
- Crea un usuario y contraseña para esa base de datos. Marca la opción de Permitir acceso desde cualquier host (o desde tu IP si es un servidor privado).
- Haz clic en Aceptar.
Crear la base de datos en DirectAdmin
- En DirectAdmin, ve a Administrador de MySQL.
- Haz clic en Crear nueva base de datos.
- Pon el nombre y crea el usuario y contraseña.
- Haz clic en Crear.
Crear la base de datos en Syspanel
- En Syspanel (puerto 2106), ve a Bases de Datos.
- Haz clic en Añadir base de datos.
- Introduce el nombre, usuario y contraseña.
- Guarda los cambios.
Paso 3: Importar la base de datos al nuevo hosting
Este es el paso clave del cambio de hosting. Vas a volcar todo el contenido de tu base de datos antigua en la nueva.
Importar desde phpMyAdmin (método recomendado)
- Accede a phpMyAdmin desde el panel de tu nuevo hosting (cPanel, Plesk, DirectAdmin o Syspanel).
- En la columna izquierda, selecciona la base de datos que acabas de crear (debe estar vacía).
- Haz clic en la pestaña Importar.
- Haz clic en Seleccionar archivo y busca el archivo
.sqlque descargaste en el Paso 1. - Mantén las opciones por defecto (juego de caracteres UTF-8).
- Haz clic en Continuar.
- Espera a que aparezca un mensaje de éxito. Si el archivo es grande, puede tardar unos segundos.
[WARNING]
Si el archivo SQL es muy grande (más de 100 MB), phpMyAdmin puede dar error de tiempo de espera. En ese caso, usa la línea de comandos o pide a tu nuevo hosting que lo importe por ti.
Importar por línea de comandos (para bases de datos grandes)
Si tienes acceso SSH al nuevo servidor, este método es mucho más rápido:
- Sube el archivo
.sqla tu nuevo hosting por FTP (por ejemplo, a la carpetapublic_html). - Conéctate por SSH:
ssh usuario@tunuevohosting.com - Ejecuta el siguiente comando, reemplazando los valores:
mysql -u tu_usuario -p tu_base_de_datos < /ruta/al/archivo.sql - Te pedirá la contraseña del usuario de la base de datos. Escríbela y pulsa Enter.
- Espera a que termine. No verás ningún mensaje a menos que haya errores.
Paso 4: Conectar tu web a la nueva base de datos
Ahora tu base de datos ya está en el nuevo servidor, pero tu web aún no sabe dónde está. Tienes que actualizar el archivo de configuración.
Para WordPress
- Localiza el archivo
wp-config.phpen la raíz de tu web (vía FTP o desde el panel de archivos de tu nuevo hosting). - Edítalo y busca las siguientes líneas:
define('DB_NAME', 'nombre_antiguo'); define('DB_USER', 'usuario_antiguo'); define('DB_PASSWORD', 'contraseña_antigua'); define('DB_HOST', 'localhost'); - Reemplaza los valores con los datos de la nueva base de datos que creaste en el Paso 2.
- Guarda el archivo.
[TIP]
A menudo elDB_HOSTeslocalhost, pero a veces tu nuevo hosting puede tener un host específico (comomysql.tudominio.com). Si no estás seguro, pregunta a tu nuevo proveedor.
Para Joomla
- Localiza el archivo
configuration.php. - Busca estas líneas:
public $host = 'localhost'; public $user = 'usuario_antiguo'; public $password = 'contraseña_antigua'; public $db = 'nombre_antiguo'; - Cámbialas por los datos de tu nueva base de datos.
- Guarda el archivo.
Paso 5: Verificar la migración y redirigir los DNS
Una vez que has conectado tu web a la nueva base de datos, toca probar que todo funciona.
- Prueba local: Si tu nuevo hosting te permite, usa una URL temporal o un archivo hosts para ver la web antes de cambiar los DNS. Abre tu web y navega por ella. Comprueba que los usuarios, los productos, las entradas del blog y los plugins funcionan.
- Comprueba errores: Si ves un mensaje de error de conexión a la base de datos, repasa los datos del
wp-config.phpoconfiguration.php. El error más común es un nombre de usuario o contraseña incorrectos. - Actualiza los DNS: Cuando todo esté correcto, cambia los servidores DNS de tu dominio para que apunten a tu nuevo hosting. Esto puede tardar entre 24 y 48 horas en propagarse.
- Mantén la base antigua: No elimines la base de datos del hosting antiguo hasta que hayan pasado al menos 48 horas y veas que tu web funciona perfectamente con la nueva.
Preguntas frecuentes (FAQ)
¿Puedo migrar la base de datos sin phpMyAdmin?
Sí, puedes usar la línea de comandos (SSH) o herramientas como MySQL Workbench o Adminer. Para usuarios sin experiencia, phpMyAdmin es la opción más amigable.
¿Qué hago si la importación falla por el tamaño del archivo?
Prueba a comprimir el archivo SQL en .gz antes de importarlo. Muchos paneles aceptan archivos comprimidos. Si sigue fallando, usa la línea de comandos o pide ayuda a tu nuevo hosting.
¿Pierdo datos durante la migración?
No, si haces una copia exacta de la base de datos antes de moverla, no perderás ningún dato. El riesgo está en no actualizar correctamente los archivos de configuración de tu web.
¿Necesito cambiar algo en la base de datos después de importarla?
Normalmente no, a menos que hayas cambiado de dominio. En ese caso, tendrías que ejecutar una consulta SQL para reemplazar las URLs antiguas por las nuevas. Este es un tema aparte, pero muy común.
¿Qué pasa si mi web usa varias bases de datos?
Repite el proceso de exportar e importar para cada una de ellas. Asegúrate de crear las bases de datos correspondientes en el nuevo hosting.
Resumen final
Migrar una base de datos de un hosting a otro es un proceso de tres pasos: exportar, crear e importar. Con las herramientas que te he mostrado (cPanel, Plesk, DirectAdmin y Syspanel), puedes hacerlo tú mismo en menos de 30 minutos. Lo más importante es no saltarse la verificación final y mantener la base de datos antigua como respaldo hasta que todo esté funcionando.
Si en algún momento te sientes abrumado, recuerda que tu nuevo proveedor de hosting suele ofrecer migraciones gratuitas o asistencia técnica. No dudes en pedir ayuda. ¡Buena suerte con tu cambio de hosting!
