🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Guía para migrar una base de datos MySQL entre servidores

Actualizado el 15 de noviembre de 2025

¿Por qué necesitas migrar tu base de datos MySQL?

Migrar una base de datos MySQL entre servidores es una tarea común cuando cambias de hosting, actualizas tu plan, o decides mover tu sitio web a un proveedor con mejor rendimiento. No te preocupes: aunque suene técnico, con las herramientas adecuadas y siguiendo los pasos correctos, cualquier persona puede hacerlo sin perder información. Esta guía está diseñada para que, incluso si nunca has tocado una base de datos, puedas completar la migración de forma segura y sin complicaciones.

El proceso consiste básicamente en exportar la base de datos desde el servidor original y luego importarla en el nuevo servidor. Para ello, usaremos principalmente phpMyAdmin, una herramienta web gratuita que viene instalada en casi todos los paneles de control de hosting. También veremos alternativas como la línea de comandos, por si prefieres un método más rápido.


Antes de empezar: preparativos esenciales

Antes de lanzarte a migrar base de datos, asegúrate de tener todo listo para evitar errores.

Requisitos previos

  • Acceso al servidor original: necesitas usuario y contraseña de tu panel de control (cPanel, Syspanel, Plesk, etc.) y acceso a phpMyAdmin.
  • Acceso al servidor de destino: igualmente, debes poder entrar a su panel y a su phpMyAdmin.
  • Datos de conexión: anota el nombre de la base de datos, el usuario y la contraseña de la base original. Los encontrarás en el archivo de configuración de tu web (por ejemplo, wp-config.php en WordPress o .env en Laravel).
  • Copia de seguridad: antes de tocar nada, haz una copia de seguridad de la base de datos original. Es tu red de seguridad por si algo sale mal.
  • Espacio suficiente: verifica que el servidor de destino tenga espacio libre para alojar la base de datos.

[WARNING] No empieces la migración si tu web está recibiendo visitas activas o si hay escrituras constantes en la base de datos (por ejemplo, durante una compra en una tienda online). Mejor hazlo en un horario de bajo tráfico o pon tu sitio en modo mantenimiento.


Método 1: Migrar con phpMyAdmin (el más fácil para principiantes)

Este es el método más visual y amigable. Perfecto si no te sientes cómodo con la terminal.

Paso 1: Exportar la base de datos desde el servidor original

  1. Accede a tu panel de control de hosting (por ejemplo, Syspanel en el puerto 2106 o cPanel en el puerto 2083).
  2. Busca la sección de Bases de Datos y haz clic en phpMyAdmin.
  3. En la ventana de phpMyAdmin, selecciona la base de datos que deseas migrar (aparece en la columna izquierda).
  4. Una vez dentro, haz clic en la pestaña Exportar (en el menú superior).
  5. Elige el método Rápido (selecciona todas las tablas) y el formato SQL.
  6. Haz clic en Continuar o Exportar. Se descargará un archivo con extensión .sql en tu computadora.

[TIP] Si tu base de datos es muy grande (más de 100 MB), el método rápido puede fallar. En ese caso, usa el método Personalizado y marca la opción "Comprimir con gzip" para obtener un archivo .sql.gz más ligero.

Paso 2: Crear la base de datos en el servidor de destino

  1. Accede al panel de control del nuevo servidor (Syspanel, cPanel, etc.).
  2. Ve a la sección Bases de Datos y busca "Crear nueva base de datos".
  3. Ponle un nombre (puede ser el mismo que el original o uno nuevo). Anótalo.
  4. Crea un usuario para esa base de datos y asígnale una contraseña segura. Luego, asocia ese usuario a la base de datos con todos los privilegios.

[INFO] En algunos paneles como Syspanel, la creación de base de datos y usuario se hace en el mismo paso. En cPanel, primero creas la base, luego el usuario y luego los vinculas. No te preocupes, el panel te guía.

Paso 3: Importar la base de datos en el servidor de destino

  1. En el nuevo servidor, abre phpMyAdmin.
  2. Selecciona la base de datos que acabas de crear (en la columna izquierda).
  3. Haz clic en la pestaña Importar (en el menú superior).
  4. Haz clic en Seleccionar archivo y elige el archivo .sql (o .sql.gz) que descargaste en el Paso 1.
  5. Deja las opciones por defecto y haz clic en Continuar o Importar.
  6. Espera a que termine el proceso. Verás un mensaje de éxito con el número de consultas ejecutadas.

[WARNING] Si el archivo es muy grande, la importación puede exceder el tiempo límite del servidor. En ese caso, consulta la sección "Solución de problemas" más abajo.

Paso 4: Actualizar la configuración de tu web

Ahora tu base de datos está en el nuevo servidor, pero tu web aún apunta a la antigua. Debes modificar el archivo de configuración de tu aplicación para que use los nuevos datos de conexión.

  • En WordPress: edita wp-config.php y cambia DB_NAME, DB_USER, DB_PASSWORD y DB_HOST (a veces el host es localhost o la IP del servidor).
  • En Laravel: edita .env y actualiza DB_DATABASE, DB_USERNAME, DB_PASSWORD y DB_HOST.
  • En Joomla: edita configuration.php y busca las líneas public $user, public $password, public $db, public $host.

Guarda los cambios y sube el archivo modificado al nuevo servidor (por FTP o mediante el administrador de archivos del panel).


Método 2: Migrar por línea de comandos (para bases grandes o usuarios avanzados)

Si tu base de datos supera los 200 MB, o si tienes acceso SSH a ambos servidores, este método es más rápido y fiable.

Exportar desde el servidor original

Conéctate por SSH al servidor original y ejecuta:

mysqldump -u usuario -p nombre_base > /tmp/mi_base.sql

Te pedirá la contraseña. Esto crea un archivo mi_base.sql en la carpeta /tmp.

[TIP] Puedes comprimirlo sobre la marcha: mysqldump -u usuario -p nombre_base | gzip > /tmp/mi_base.sql.gz

Transferir el archivo al servidor de destino

Usa scp (copia segura) desde tu servidor original:

scp /tmp/mi_base.sql.gz usuario@nuevo-servidor.com:/tmp/

Te pedirá la contraseña del usuario en el servidor de destino. Si no tienes scp, puedes descargar el archivo a tu PC y luego subirlo por FTP.

Importar en el servidor de destino

Conéctate por SSH al nuevo servidor y ejecuta:

mysql -u nuevo_usuario -p nueva_base < /tmp/mi_base.sql

Si comprimiste, primero descomprime:

gunzip /tmp/mi_base.sql.gz
mysql -u nuevo_usuario -p nueva_base < /tmp/mi_base.sql

[WARNING] Asegúrate de que la base de datos nueva_base ya exista en el servidor de destino. Puedes crearla con: mysql -u root -p -e "CREATE DATABASE nueva_base;"


Solución de problemas comunes durante la MySQL migración

Error "Max allowed packet" al importar

Ocurre cuando el archivo SQL contiene una línea muy larga (por ejemplo, un campo con mucho texto). Solución:

  • Aumenta temporalmente el límite en phpMyAdmin o en MySQL. En phpMyAdmin, ve a Variables y busca max_allowed_packet. Si no puedes cambiarlo, usa la línea de comandos.
  • Divide el archivo SQL en partes más pequeñas con herramientas como BigDump o con comandos split.

Error de codificación de caracteres (ñ, tildes)

Si al importar ves caracteres raros, la codificación no coincide. Al exportar, elige utf8 o utf8mb4 en las opciones de phpMyAdmin. Al importar, asegúrate de que la base de destino también use utf8mb4_general_ci.

La importación se queda colgada o no termina

Prueba a:

  • Aumentar el tiempo de ejecución en phpMyAdmin (opción $cfg['ExecTimeLimit']).
  • Usar la línea de comandos, que no tiene límite de tiempo.
  • Comprimir el archivo antes de importar (formato .gz).

No encuentro phpMyAdmin en el panel

En algunos paneles como Syspanel (puerto 2106), phpMyAdmin está en la sección Bases de DatosphpMyAdmin. En otros, puede estar en Avanzado o Herramientas. Si no lo ves, contacta a tu soporte técnico.


Preguntas frecuentes (FAQ)

¿Puedo migrar solo algunas tablas?

Sí, en phpMyAdmin, al exportar, elige Personalizado y luego selecciona solo las tablas que quieras. En línea de comandos, puedes usar mysqldump con el parámetro --tables y listar las tablas.

¿Qué hago si mi base de datos es muy grande (más de 1 GB)?

El método de phpMyAdmin puede fallar. Usa la línea de comandos con compresión (gzip). Otra opción es usar herramientas como MySQL Workbench o Adminer, que manejan mejor archivos grandes.

¿Necesito cambiar algo en la base de datos después de importarla?

Depende. Si cambiaste el nombre de la base de datos o el usuario, tu web debe apuntar a los nuevos datos (como vimos en el Paso 4). Además, si tu web usa rutas absolutas (por ejemplo, /home/usuario/public_html), deberás actualizarlas en la tabla de opciones (en WordPress, en wp_options).

¿Puedo migrar la base de datos sin interrumpir mi web?

Sí, si usas un plugin o script que bloquee las escrituras durante la exportación (por ejemplo, WP Migrate DB para WordPress). O puedes poner tu web en modo mantenimiento mientras haces la migración.

¿Qué es Syspanel y cómo accedo a él?

Syspanel es un panel de control de hosting (similar a cPanel) que se usa en algunos servidores. Para acceder, abre tu navegador y escribe https://IP-DE-TU-SERVIDOR:2106. Luego ingresa con tu usuario y contraseña de administrador. Desde ahí puedes gestionar bases de datos, archivos y más.


Conclusión: migrar tu base de datos MySQL es más fácil de lo que parece

Como has visto, migrar base de datos entre servidores es un proceso de tres pasos: exportar, crear la base en el destino e importar. Con phpMyAdmin es muy visual y apto para principiantes, mientras que la línea de comandos es ideal para bases grandes o usuarios con experiencia. Lo importante es planificar, hacer copias de seguridad y seguir los pasos con calma.

Si encuentras algún error, revisa la sección de problemas comunes o consulta la documentación de tu panel. Y recuerda: siempre puedes pedir ayuda a tu proveedor de hosting. ¡Buena suerte con tu MySQL migración!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel