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

Cómo migrar una base de datos de WordPress de un servidor a otro (DirectAdmin a cPanel)

Actualizado el 12 de noviembre de 2025

Mudarse de servidor puede sonar aterrador, sobre todo si no eres un experto en tecnología. Pero tranquilo, estás en el lugar correcto. Migrar una base de datos de WordPress de un servidor con DirectAdmin a uno con cPanel es un proceso muy común y, si sigues esta guía paso a paso, lo harás sin romper nada (y sin perder el sueño).

Vamos a desglosarlo todo: desde hacer la copia de seguridad en el servidor antiguo hasta importarla en el nuevo, pasando por los ajustes finos que necesitarás en el archivo wp-config.php. Al final, tendrás tu web funcionando en el nuevo hosting como si nada hubiera pasado.


Antes de Empezar: ¿Qué Necesitas y Por Qué?

Antes de lanzarnos a los comandos y clics, es vital entender qué vamos a hacer. Una base de datos en WordPress almacena todo: entradas, páginas, comentarios, usuarios, opciones de configuración del tema y plugins. Básicamente, es el cerebro de tu web.

Cuando migras, no solo mueves los archivos (fotos, temas, plugins), sino también este cerebro. Y aquí está el truco: DirectAdmin y cPanel son dos paneles de control diferentes. Aunque ambos gestionan servidores, la forma de acceder a las herramientas (como phpMyAdmin) o de crear usuarios de bases de datos es distinta. Por eso, no puedes simplemente copiar y pegar archivos; necesitas exportar e importar la base de datos.

¿Qué necesitas tener a mano?

  • Acceso a tu panel de DirectAdmin (el servidor antiguo).
  • Acceso a tu panel de cPanel (el servidor nuevo).
  • Los datos de acceso FTP o el administrador de archivos de ambos paneles.
  • Un editor de texto plano (como el Bloc de notas o Sublime Text) para modificar un archivo.
  • Paciencia y una taza de café. ☕

Fase 1: Exportar la Base de Datos desde DirectAdmin

El primer paso es sacar una copia de tu base de datos del servidor antiguo. Esto se hace, generalmente, con phpMyAdmin, una herramienta que está integrada en casi todos los paneles.

Paso 1: Localizar la Base de Datos en DirectAdmin

  1. Inicia sesión en tu panel de DirectAdmin. Normalmente es algo como tudominio.com:2222.
  2. Busca la sección "MySQL Management" o "Gestión de MySQL". El nombre puede variar según la versión, pero suele estar en la pantalla principal o en el menú lateral.
  3. Verás una lista de todas tus bases de datos. Identifica la que corresponde a tu WordPress. Si no estás seguro, revisa el archivo wp-config.php de tu web (lo veremos más adelante). El nombre de la base de datos suele tener un prefijo con el nombre de tu usuario (ej: usuario_wpdb).

Paso 2: Exportar con phpMyAdmin

  1. En la lista de bases de datos, haz clic en el icono de phpMyAdmin (normalmente un elefante o un enlace que dice "phpMyAdmin"). Esto abrirá la herramienta en una nueva pestaña.
  2. En el panel izquierdo de phpMyAdmin, verás una lista de bases de datos. Haz clic en el nombre de la base de datos que quieres exportar (la que identificaste en el paso anterior).
  3. En la parte superior, haz clic en la pestaña "Exportar" (o "Export").
  4. Verás dos métodos de exportación: Rápido y Personalizado. Te recomiendo usar "Personalizado" para tener más control, aunque para una migración básica, el método "Rápido" suele funcionar bien.
  5. Si eliges "Personalizado", asegúrate de que el formato sea SQL y deja el resto de opciones por defecto. Si tu web es muy grande, puedes marcar la opción "Comprimir" y elegir "gzip" o "zip" para que el archivo pese menos.
  6. Haz clic en el botón "Continuar" o "Exportar".
  7. El navegador descargará un archivo con extensión .sql (o .sql.gz / .sql.zip). Guárdalo en un lugar seguro de tu ordenador.

[TIP] Si tu base de datos es enorme (más de 500 MB), exportarla por phpMyAdmin puede dar errores de tiempo de espera. En ese caso, lo mejor es usar la herramienta mysqldump desde SSH si tienes acceso, o pedir ayuda a tu soporte técnico. Para la mayoría de los casos, phpMyAdmin es suficiente.


Fase 2: Crear la Nueva Base de Datos en cPanel

Ahora vamos al servidor nuevo. Aquí no importaremos directamente el archivo .sql; primero necesitamos un "contenedor" vacío donde meterlo. Eso se hace creando una base de datos y un usuario asociado en cPanel.

Paso 1: Acceder al Área de Bases de Datos MySQL en cPanel

  1. Inicia sesión en tu panel de cPanel. La URL suele ser tudominio.com/cpanel o tudominio.com:2083.
  2. Busca la sección "Bases de Datos" y haz clic en "Bases de Datos MySQL®" (o "MySQL Databases").

Paso 2: Crear la Base de Datos

  1. En el campo "Crear una base de datos" (Create a Database), escribe un nombre. cPanel automáticamente le añadirá un prefijo con tu nombre de usuario (ej: nuevousuario_wpdb). Toma nota del nombre completo, porque lo necesitarás luego.
  2. Haz clic en "Crear base de datos". Verás un mensaje de éxito.

Paso 3: Crear el Usuario de la Base de Datos

  1. Baja hasta la sección "Usuarios de MySQL" (MySQL Users).
  2. Crea un nuevo nombre de usuario (ej: nuevousuario_wpuser) y una contraseña segura. Puedes usar el generador de contraseñas que te ofrece el propio cPanel.
  3. Haz clic en "Crear usuario".

Paso 4: Añadir el Usuario a la Base de Datos

  1. Ahora, ve a la sección "Añadir usuario a la base de datos" (Add User to Database).
  2. Selecciona el usuario que acabas de crear en el menú desplegable de "Usuario" y la base de datos que creaste en el menú de "Base de datos".
  3. Haz clic en "Añadir".
  4. Se abrirá una pantalla con una lista de privilegios. Para WordPress, lo más sencillo y seguro es marcar la casilla "TODOS LOS PRIVILEGIOS" (ALL PRIVILEGES) y hacer clic en "Realizar cambios".

[WARNING] Anota estos tres datos: el nombre de la base de datos, el nombre de usuario y la contraseña. Los necesitarás en el Paso 4. Guárdalos en un bloc de notas, no los pierdas.


Fase 3: Importar la Base de Datos en cPanel

Ahora que tenemos el "contenedor" (la base de datos) y la "llave" (el usuario), es hora de meter los datos que exportamos. Este proceso se llama "importar".

Paso 1: Acceder a phpMyAdmin en cPanel

  1. Dentro de tu cPanel, en la sección "Bases de Datos", haz clic en el icono de phpMyAdmin.
  2. Se abrirá una nueva pestaña con la herramienta.

Paso 2: Seleccionar la Base de Datos

  1. En el panel izquierdo, verás una lista de bases de datos. Haz clic en el nombre de la base de datos que creaste en el Paso 2 de la Fase 2 (ej: nuevousuario_wpdb).
  2. Importante: Debe estar vacía. No deberías ver ninguna tabla.

Paso 3: Importar el Archivo .sql

  1. Con la base de datos seleccionada, haz clic en la pestaña "Importar" (Import).
  2. Haz clic en el botón "Elegir archivo" (Browse / Choose File) y selecciona el archivo .sql (o .sql.gz / .sql.zip) que descargaste desde DirectAdmin.
  3. Deja el resto de las opciones por defecto. El formato debe ser SQL.
  4. Haz clic en el botón "Continuar" (Go / Continue) al final de la página.

Paso 4: Verificar la Importación

  1. phpMyAdmin procesará el archivo. Si todo ha ido bien, verás un mensaje verde de éxito.
  2. En el panel izquierdo, haz clic en el nombre de tu base de datos. Ahora deberías ver una lista de tablas (como wp_posts, wp_options, etc.). ¡Enhorabuena, la base de datos está migrada!

[INFO] Si el archivo .sql es muy grande, es posible que la importación falle por límites de tiempo del servidor. Si esto ocurre, prueba a importar el archivo comprimido (.gz o .zip), ya que cPanel a veces lo procesa mejor. Si sigue fallando, contacta con tu nuevo proveedor de hosting para que aumente el upload_max_filesize o el max_execution_time.


Fase 4: Ajustar el Archivo wp-config.php

Este es el paso más crítico de toda la migración. WordPress necesita saber cómo conectarse a su base de datos. La información de conexión está en el archivo wp-config.php, que se encuentra en la raíz de tu instalación de WordPress (junto a las carpetas wp-admin, wp-content, etc.).

Paso 1: Localizar y Editar el Archivo

  1. Conecta a tu nuevo servidor mediante FTP (con FileZilla, por ejemplo) o usa el Administrador de Archivos de cPanel.
  2. Navega hasta la carpeta donde has subido los archivos de tu WordPress (normalmente public_html).
  3. Busca el archivo wp-config.php. Haz clic derecho y selecciona "Editar" (o usa el editor de texto del Administrador de Archivos de cPanel).

Paso 2: Cambiar los Datos de Conexión

Dentro del archivo, busca las líneas que se ven así:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'nombre_base_antigua' );

/** MySQL database username */
define( 'DB_USER', 'usuario_base_antigua' );

/** MySQL database password */
define( 'DB_PASSWORD', 'contraseña_antigua' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

Debes reemplazar los valores con los que creaste en la Fase 2:

  • DB_NAME: Pon el nombre de la nueva base de datos (ej: nuevousuario_wpdb).
  • DB_USER: Pon el nombre del nuevo usuario (ej: nuevousuario_wpuser).
  • DB_PASSWORD: Pon la contraseña que elegiste para ese usuario.
  • DB_HOST: Normalmente es localhost, pero en algunos servidores cPanel puede ser localhost o una dirección como mysql.tudominio.com. Deja localhost si no estás seguro, ya que es lo más habitual.

Guarda los cambios y sube el archivo si lo estabas editando localmente.

[WARNING] Asegúrate de no dejar espacios en blanco antes de <?php al inicio del archivo, o verás un error de "headers already sent". Si el archivo no funciona, revisa que no haya caracteres extraños.


Fase 5: Migrar los Archivos (Opcional pero Esencial)

Aunque este artículo se centra en la base de datos, es imposible migrar WordPress sin mover los archivos. La base de datos y los archivos van de la mano.

  1. Descarga todos los archivos de tu WordPress desde el servidor antiguo (DirectAdmin) usando FTP o el Administrador de Archivos.
  2. Sube todos esos archivos a la carpeta public_html de tu nuevo servidor (cPanel), también por FTP o Administrador de Archivos.
  3. Importante: Asegúrate de que la estructura de carpetas se mantenga. No subas una carpeta que contenga los archivos dentro de otra carpeta.

[TIP] Si tu web es grande, este proceso puede llevar tiempo. Usa un cliente FTP como FileZilla que te permite poner en cola los archivos y reanudar la transferencia si se corta.


Fase 6: Actualizar las URLs y Ajustes Finales

Ahora viene el momento de la verdad. Si has cambiado el dominio (por ejemplo, de dominioantiguo.com a dominionuevo.com), tu web mostrará un error o una página en blanco. Esto es porque en la base de datos aún se guardan las URLs antiguas.

Para solucionarlo, tienes dos opciones:

Opción A: Usar un Plugin (Lo Más Fácil)

  1. Ve a tu panel de administración de WordPress (tudominio.com/wp-admin).
  2. Instala y activa el plugin "Better Search Replace" o "Velvet Blues Update URLs".
  3. En el plugin, busca y reemplaza http://dominioantiguo.com por http://dominionuevo.com (o https:// si usas SSL).
  4. Marca todas las tablas de la base de datos y ejecuta el reemplazo.

Opción B: Usar phpMyAdmin (Sin Plugins)

  1. Accede a phpMyAdmin en tu cPanel.
  2. Selecciona tu base de datos.
  3. Haz clic en la pestaña "SQL".
  4. Ejecuta el siguiente comando SQL (reemplaza las URLs):
UPDATE wp_options SET option_value = replace(option_value, 'http://dominioantiguo.com', 'http://dominionuevo.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://dominioantiguo.com','http://dominionuevo.com');
UPDATE wp_posts SET post_content = replace(post_content, 'http://dominioantiguo.com', 'http://dominionuevo.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://dominioantiguo.com','http://dominionuevo.com');

[WARNING] Asegúrate de que el prefijo de las tablas sea wp_. Si no, cámbialo en el comando SQL. Si tu web usa https://, usa esa URL en los comandos.


Preguntas Frecuentes (FAQ)

¿Qué pasa si no cambio las URLs en la base de datos?

Si no cambias las URLs, al entrar a tu web verás un error de "demasiadas redirecciones" o serás redirigido al dominio antiguo. Es un paso obligatorio.

¿Puedo migrar solo la base de datos sin los archivos?

No tiene sentido. La base de datos necesita los archivos del tema y los plugins para funcionar. Debes migrar ambos.

¿Qué hago si mi web usa un prefijo de tabla personalizado (ej: miweb_posts)?

En los comandos SQL de la Fase 6, tendrás que reemplazar wp_ por tu prefijo personalizado. El plugin "Better Search Replace" detecta automáticamente todas las tablas, así que es más seguro.

¿Es necesario cambiar la contraseña de la base de datos en WordPress?

No es necesario, pero es una buena práctica de seguridad. Si la cambias, recuerda actualizarla también en el archivo wp-config.php.

¿Puedo usar Syspanel en lugar de cPanel para la migración?

¡Sí! Syspanel (el antiguo HestiaCP) es otro panel de control muy popular. Si tu nuevo servidor usa Syspanel, el proceso es similar: tendrás una sección de "Bases de Datos" donde crear la BD y el usuario, y un acceso a phpMyAdmin para importar. Simplemente, la interfaz será ligeramente distinta a cPanel. Recuerda que el acceso a Syspanel se realiza a través del puerto 2106 (ej: tudominio.com:2106), pero el flujo de trabajo de exportar/importar es idéntico al que te he explicado.

¿Y si me da error al importar en

¿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