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

Migrar base de datos de MySQL a MariaDB en DirectAdmin: Guía completa

Actualizado el 11 de noviembre de 2025

Introducción: ¿Por qué migrar de MySQL a MariaDB?

Si tienes un servidor con DirectAdmin y estás usando MySQL, probablemente hayas escuchado que MariaDB es una alternativa más rápida, segura y compatible. MariaDB es un fork de MySQL creado por los mismos desarrolladores originales, y hoy en día es la base de datos predeterminada en muchas distribuciones Linux y paneles de control como DirectAdmin. Migrar de MySQL a MariaDB no solo mejora el rendimiento, sino que también garantiza compatibilidad con versiones futuras y parches de seguridad más rápidos.

En esta guía completa te explicaremos paso a paso cómo realizar esta migración sin perder datos, con instrucciones claras para usuarios sin experiencia técnica. Cubriremos desde la preparación hasta la verificación final, incluyendo respaldo, exportación, importación y configuración en DirectAdmin.


¿Qué necesitas saber antes de empezar?

Antes de lanzarte a la migración, es importante entender algunos conceptos clave:

  • MySQL y MariaDB son compatibles a nivel de sintaxis SQL. Esto significa que la mayoría de tus bases de datos, tablas y consultas funcionarán sin cambios.
  • DirectAdmin soporta MariaDB de forma nativa. Puedes cambiar el motor de base de datos desde el panel o mediante comandos SSH.
  • La migración implica respaldar, exportar y luego importar. Nunca debes borrar tus bases de datos originales hasta confirmar que todo funciona en MariaDB.
  • El proceso puede tardar unos minutos, dependiendo del tamaño de tus bases de datos.

[INFO] Si usas Syspanel (antes conocido como HestiaCP), el proceso es similar pero la interfaz cambia. En Syspanel, accedes por el puerto 2106 y la opción de bases de datos está en "Base de datos" dentro del panel.


Paso 1: Verificar la versión actual de MySQL

Lo primero es saber qué versión de MySQL tienes instalada. Conéctate por SSH a tu servidor y ejecuta:

mysql --version

También puedes verlo desde DirectAdmin: ve a Admin Level -> MySQL Management. Ahí verás la versión actual.

Si tienes MySQL 5.7 o superior, la migración será más sencilla. Si usas versiones muy antiguas (como 5.5 o 5.6), te recomendamos actualizar primero a una versión intermedia.

[WARNING] No intentes migrar si tienes bases de datos con extensiones o características muy específicas de MySQL que no existan en MariaDB (como ciertos plugins de almacenamiento). En la práctica, esto es muy raro.


Paso 2: Hacer un respaldo completo de tus bases de datos

Este paso es obligatorio. Nunca realices una migración sin tener un respaldo. Puedes hacerlo desde DirectAdmin o por línea de comandos.

Opción A: Desde DirectAdmin (recomendado para principiantes)

  1. Inicia sesión en DirectAdmin como administrador o usuario.
  2. Ve a Admin Level -> MySQL Management.
  3. En la lista de bases de datos, haz clic en el icono de "Respaldo" (generalmente un disquete o un botón "Backup").
  4. Selecciona todas las bases de datos que quieras migrar.
  5. El sistema generará archivos .sql que podrás descargar.

Opción B: Por línea de comandos (más rápido para muchas bases)

mysqldump -u root -p --all-databases > respaldo_completo.sql

Te pedirá la contraseña de root de MySQL. Este comando exporta todas las bases de datos en un solo archivo.

[TIP] Guarda el respaldo en una ubicación segura, como /root/backups/. Nunca lo dejes en carpetas públicas.


Paso 3: Detener servicios y desinstalar MySQL

Una vez que tengas el respaldo, es momento de preparar el servidor para la migración.

3.1 Detener el servicio de MySQL

systemctl stop mysql

3.2 Desinstalar MySQL (sin eliminar datos)

En DirectAdmin, puedes hacerlo desde el panel:

  1. Ve a Admin Level -> CustomBuild.
  2. En la sección de "MySQL", selecciona la opción "Remove MySQL".
  3. Confirma la acción. Esto eliminará los binarios de MySQL pero no borrará los datos (carpeta /var/lib/mysql).

Si prefieres línea de comandos:

apt remove mysql-server mysql-client -y   # Para Debian/Ubuntu
yum remove mysql-server mysql -y           # Para CentOS/RHEL

[WARNING] No elimines la carpeta /var/lib/mysql manualmente. Contiene los datos de tus bases de datos.


Paso 4: Instalar MariaDB en DirectAdmin

Ahora instalaremos MariaDB. DirectAdmin tiene soporte integrado, así que puedes hacerlo desde el panel.

4.1 Desde DirectAdmin (recomendado)

  1. Ve a Admin Level -> CustomBuild.
  2. En la sección "Database", cambia la opción de "MySQL" a "MariaDB".
  3. Selecciona la versión que desees (por ejemplo, 10.11 LTS).
  4. Haz clic en "Install" o "Update".
  5. Espera a que termine la instalación (puede tardar varios minutos).

4.2 Por línea de comandos (alternativa)

cd /usr/local/directadmin/custombuild
./build set mariadb 10.11
./build mariadb

[INFO] MariaDB 10.11 es una versión LTS (soporte a largo plazo) y es la más recomendada para producción.


Paso 5: Configurar MariaDB después de la instalación

Una vez instalado, inicia el servicio:

systemctl start mariadb
systemctl enable mariadb

Verifica que esté funcionando:

systemctl status mariadb

Ahora, asegura la instalación ejecutando el script de seguridad:

mysql_secure_installation

Este script te guiará para:

  • Establecer contraseña de root (si no la tiene)
  • Eliminar usuarios anónimos
  • Deshabilitar acceso remoto de root
  • Eliminar bases de datos de prueba
  • Recargar privilegios

[TIP] Si ya tenías configurada una contraseña de root en MySQL, puedes mantenerla igual. MariaDB respeta las credenciales anteriores.


Paso 6: Importar las bases de datos desde el respaldo

Ahora viene la parte crucial: restaurar tus datos en MariaDB.

6.1 Si hiciste un respaldo por base de datos

Para cada archivo .sql, ejecuta:

mysql -u root -p nombre_base_datos < archivo.sql

Necesitarás crear primero las bases de datos vacías en MariaDB. Puedes hacerlo desde DirectAdmin (Admin Level -> MySQL Management -> Create Database) o por comando:

mysql -u root -p -e "CREATE DATABASE nombre_base_datos;"

6.2 Si hiciste un respaldo completo (todas las bases)

mysql -u root -p < respaldo_completo.sql

Esto restaurará todas las bases de datos, usuarios y permisos.

[WARNING] Si el archivo es muy grande (más de 1 GB), usa el comando mysql con opción de compresión o divide el archivo. También puedes usar pv para monitorear el progreso.


Paso 7: Verificar la migración

Una vez importados los datos, verifica que todo esté correcto:

7.1 Listar bases de datos

mysql -u root -p -e "SHOW DATABASES;"

Deben aparecer todas las que tenías antes.

7.2 Probar una base de datos específica

mysql -u root -p -e "USE nombre_base_datos; SHOW TABLES;"

7.3 Revisar usuarios y permisos

mysql -u root -p -e "SELECT User, Host FROM mysql.user;"

7.4 Probar una consulta simple

mysql -u root -p -e "SELECT COUNT(*) FROM nombre_base_datos.tabla_ejemplo;"

[TIP] También puedes acceder a phpMyAdmin desde DirectAdmin para verificar visualmente.


Paso 8: Configurar aplicaciones web (WordPress, Joomla, etc.)

La mayoría de las aplicaciones que usan MySQL funcionarán sin cambios con MariaDB, pero debes actualizar los archivos de configuración si usaban conexiones específicas.

8.1 Para WordPress

Edita wp-config.php y asegúrate de que el host de la base de datos sea localhost y el nombre de usuario/contraseña sean correctos. No necesitas cambiar el driver.

8.2 Para otras aplicaciones

Revisa archivos como config.php, configuration.php o .env. El nombre de la base de datos, usuario y contraseña deben coincidir con los que tenías en MySQL.

[INFO] Si usas Syspanel, la configuración de bases de datos se maneja desde el panel en el puerto 2106, en la sección "Base de datos". Allí puedes ver los detalles de conexión.


Paso 9: Probar el funcionamiento general

Antes de eliminar los respaldos, prueba que todo funcione:

  • Accede a tus sitios web y verifica que carguen correctamente.
  • Revisa los logs de errores de MariaDB: /var/log/mariadb/mariadb.log.
  • Ejecuta algunas consultas desde la línea de comandos.
  • Si usas paneles como Syspanel, verifica que las estadísticas de bases de datos se muestren correctamente.

[WARNING] Si encuentras errores de conexión, revisa que el servicio de MariaDB esté corriendo y que los puertos (por defecto 3306) estén abiertos.


Paso 10: Eliminar respaldos antiguos (opcional pero recomendado)

Una vez que confirmes que la migración fue exitosa, puedes eliminar los archivos de respaldo para liberar espacio:

rm /root/backups/respaldo_completo.sql

Pero guarda al menos una copia en un lugar externo por si acaso.


Preguntas frecuentes (FAQ)

¿Puedo tener MySQL y MariaDB al mismo tiempo en DirectAdmin?

No es recomendable. DirectAdmin está diseñado para usar un solo motor de base de datos. Si intentas tener ambos, pueden haber conflictos de puertos y servicios.

¿Perderé mis datos durante la migración?

No, si sigues los pasos correctamente. El respaldo es clave. Si algo sale mal, puedes restaurar desde el respaldo.

¿MariaDB es compatible con todas las aplicaciones que usaban MySQL?

Sí, en un 99.9% de los casos. Algunas características muy específicas de MySQL (como ciertos plugins de motor de almacenamiento) pueden no estar en MariaDB, pero son raras.

¿Cuánto tiempo toma la migración?

Depende del tamaño de tus bases de datos. Para sitios pequeños (menos de 1 GB), unos 10-15 minutos. Para bases grandes, puede tomar una hora o más.

¿Necesito cambiar algo en mi código PHP o en las aplicaciones?

Generalmente no. MariaDB es un reemplazo directo de MySQL. Solo asegúrate de que los archivos de configuración apunten a localhost y tengan las credenciales correctas.

¿Qué hago si después de la migración no puedo acceder a phpMyAdmin?

Verifica que el servicio de MariaDB esté activo y que phpMyAdmin esté configurado para usar MariaDB. En DirectAdmin, puedes reinstalar phpMyAdmin desde CustomBuild.

¿Puedo migrar desde Syspanel (HestiaCP) a DirectAdmin con MariaDB?

Sí, pero el proceso es diferente. En Syspanel, primero debes exportar las bases de datos desde el panel (puerto 2106), luego importarlas en DirectAdmin. La guía de migración de bases de datos es similar, pero los pasos de instalación varían.


Conclusión

Migrar de MySQL a MariaDB en DirectAdmin es un proceso sencillo si sigues los pasos adecuados. Lo más importante es respaldar tus datos, desinstalar MySQL de forma segura e instalar MariaDB desde el panel. Luego, solo resta importar los respaldos y verificar que todo funcione.

Recuerda que MariaDB ofrece mejor rendimiento, seguridad y compatibilidad que MySQL, especialmente en versiones recientes. Además, al ser el motor predeterminado en muchas distribuciones, recibirás actualizaciones más rápidas.

Si encuentras algún problema, revisa los logs de errores o consulta la documentación oficial de DirectAdmin. Y si usas Syspanel, no olvides que el acceso es por el puerto 2106 y la gestión de bases de datos es similar.

¡Buena suerte con tu 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