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

Guía para migrar bases de datos de MySQL a MariaDB en Syspanel

Actualizado el 7 de enero de 2026

Bienvenido a esta guía completa. Si estás leyendo esto, es probable que tengas un sitio web o una aplicación alojada en un servidor con Syspanel y estés considerando (o necesites) migrar tus bases de datos de MySQL a MariaDB.

No te preocupes, es un proceso más sencillo de lo que parece. MariaDB es un fork (derivación) de MySQL, creado por los desarrolladores originales de MySQL. Es compatible a nivel de comandos, estructura y archivos, pero ofrece mejoras significativas en rendimiento, velocidad y motores de almacenamiento. En Syspanel, esta migración se puede realizar de forma limpia y segura.


¿Por qué migrar de MySQL a MariaDB?

Antes de empezar, entendamos por qué vale la pena dar este paso. MariaDB no es un reemplazo cualquiera; es una evolución directa.

  • Rendimiento superior: MariaDB suele ser más rápido en consultas complejas y manejo de grandes volúmenes de datos. Es especialmente notable en sitios con mucho tráfico o bases de datos muy grandes.
  • Motores de almacenamiento avanzados: MariaDB incluye motores como Aria, XtraDB (un reemplazo mejorado de InnoDB) y ColumnStore para análisis, que no están en MySQL estándar.
  • Mejor seguridad: Incluye mejoras nativas en cifrado y autenticación, además de parches de seguridad más rápidos.
  • Compatibilidad total con MySQL: Puedes migrar sin cambiar ni una línea de código de tu aplicación. Tus consultas, procedimientos almacenados y disparadores (triggers) funcionarán exactamente igual.
  • Comunidad activa y código abierto: Es mantenido por la fundación MariaDB, lo que garantiza desarrollo continuo y transparencia.

En resumen, migrar es actualizar tu sistema de base de datos sin sufrir dolores de cabeza. Y con Syspanel, el proceso está muy bien soportado.


Preparativos: Antes de tocar nada

La clave de una migración exitosa es la preparación. No te saltes estos pasos.

1. Hacer una copia de seguridad completa (Backup)

Este es el paso más importante. Necesitas un respaldo de todas tus bases de datos. En Syspanel, puedes hacerlo fácilmente.

[WARNING] No realices ningún cambio sin tener al menos dos copias de seguridad en lugares diferentes (por ejemplo, en tu ordenador local y en un almacenamiento en la nube). Una migración mal hecha puede borrar datos.

  • Desde Syspanel (Panel de Control):

    1. Accede a tu panel de Syspanel (puerto 2106).
    2. Ve a la sección de Bases de Datos.
    3. Selecciona la base de datos que quieres migrar.
    4. Busca la opción “Exportar” o “Hacer Backup”. Syspanel generará un archivo .sql con toda la información.
    5. Descarga ese archivo a tu computadora.
  • Desde la línea de comandos (SSH) - Alternativa avanzada:
    Si tienes acceso SSH, puedes usar mysqldump. Es muy fiable.

    mysqldump -u usuario -p nombre_base_datos > respaldo_seguro.sql
    

    Te pedirá la contraseña. Luego descarga el archivo con un cliente FTP o SCP.

2. Verificar la compatibilidad de tu aplicación

Aunque MariaDB es compatible, revisa estos puntos para estar tranquilo:

  • Versión de MariaDB: Asegúrate de que la versión que vas a instalar (normalmente la 10.x) sea compatible con tu CMS (WordPress, Joomla, etc.) o aplicación. Casi siempre lo es.
  • Extensiones PHP: Si usas PHP, verifica que tengas instalada la extensión php-mysqlnd o php-pdo-mysql. MariaDB funciona con las mismas extensiones que MySQL.
  • Caracteres especiales: Si tu base de datos usa caracteres como emojis o símbolos especiales, asegúrate de que la codificación sea UTF-8 (utf8mb4). MariaDB lo maneja perfectamente.

3. Anotar las credenciales de acceso

Ten a mano el usuario, la contraseña y el nombre de cada base de datos que vayas a migrar. En Syspanel, puedes ver esta información en la sección de Bases de Datos.


Proceso de migración paso a paso en Syspanel

Una vez que tienes el backup y las credenciales, podemos empezar. Vamos a hacerlo de dos maneras: la más segura (exportar/importar) y la más rápida (cambio de motor).

Método 1: Exportar desde MySQL e Importar a MariaDB (Recomendado)

Este método es el más fiable porque implica una copia exacta de los datos.

Paso 1: Desinstalar MySQL (o detenerlo)

No puedes tener dos servidores de bases de datos usando el mismo puerto (3306) al mismo tiempo. Primero, debemos detener y desinstalar MySQL.

[INFO] Si tienes aplicaciones funcionando, haz esto en un momento de bajo tráfico o pon el sitio en modo mantenimiento.

  1. Accede a tu servidor por SSH.
  2. Detén el servicio de MySQL:
    sudo systemctl stop mysql
    
  3. Desinstala MySQL (esto no borra tus datos, solo el programa):
    sudo apt-get remove --purge mysql-server mysql-client mysql-common -y
    
    (En CentOS/RHEL usa yum remove)

Paso 2: Instalar MariaDB

Ahora instalaremos MariaDB desde los repositorios oficiales. Syspanel te facilita esto, pero también puedes hacerlo manualmente.

  • Opción A: Desde Syspanel (si tiene gestor de paquetes): Algunas versiones de Syspanel incluyen un instalador de MariaDB. Busca en la sección de Servidores o Software la opción de instalar MariaDB. Si no aparece, sigue con la opción B.
  • Opción B: Desde la línea de comandos (Recomendado):
    1. Actualiza los repositorios:
      sudo apt update
      
    2. Instala MariaDB:
      sudo apt-get install mariadb-server mariadb-client -y
      
    3. Verifica la instalación:
      sudo systemctl status mariadb
      
      Deberías ver el servicio activo y funcionando.

Paso 3: Configurar la seguridad de MariaDB

MariaDB incluye un script de seguridad que es muy recomendable ejecutar.

sudo mysql_secure_installation

Te hará varias preguntas:

  • Enter current password for root: Pulsa Enter (si no has puesto contraseña aún).
  • Switch to unix_socket authentication? Responde n (no).
  • Change the root password? Responde Y (sí) y pon una contraseña segura.
  • Remove anonymous users? Responde Y.
  • Disallow root login remotely? Responde Y (a menos que necesites acceso remoto).
  • Remove test database and access to it? Responde Y.
  • Reload privilege tables now? Responde Y.

Paso 4: Importar tus bases de datos

Ahora es el momento de restaurar tus backups.

  1. Accede a MariaDB como root:

    sudo mysql -u root -p
    

    Te pedirá la contraseña que acabas de establecer.

  2. Crea la base de datos (si no existe):

    CREATE DATABASE nombre_de_tu_base;
    

    (Reemplaza nombre_de_tu_base por el nombre real)

  3. Sal de la consola de MariaDB:

    EXIT;
    
  4. Importa el archivo .sql que descargaste:

    mysql -u root -p nombre_de_tu_base < ruta/al/archivo/respaldo.sql
    

    Te pedirá la contraseña de root. Este proceso puede tardar unos segundos o minutos, dependiendo del tamaño.

  5. Verifica que los datos estén:
    Vuelve a entrar a MariaDB y usa USE nombre_de_tu_base; y luego SHOW TABLES;. Deberías ver todas tus tablas.

Paso 5: Reconfigurar usuarios y permisos en Syspanel

Syspanel gestiona los usuarios de bases de datos de forma independiente. Después de la migración, es posible que necesites reasignar los permisos.

  1. Accede a Syspanel (puerto 2106).
  2. Ve a Bases de Datos.
  3. Si la base de datos aparece sin usuario, crea un nuevo usuario o asigna uno existente. Syspanel se encargará de los permisos automáticamente.
  4. Importante: Actualiza la contraseña del usuario en tu aplicación (WordPress, etc.) si es necesario. Normalmente, si usas las mismas credenciales, no hará falta.

Método 2: Migración directa (Cambio de motor) - Solo para avanzados

Si no quieres exportar/importar y tu sistema lo permite, puedes instalar MariaDB y luego cambiar el motor de almacenamiento de las tablas de MySQL a MariaDB (por ejemplo, de MyISAM a Aria o de InnoDB a XtraDB). Esto no es una migración de datos, sino un cambio de motor.

[WARNING] Este método no es una migración completa. Si tienes procedimientos almacenados o funciones específicas de MySQL, podrían no funcionar. No lo recomiendo para principiantes.


Verificación post-migración

Una vez terminada la migración, es crucial comprobar que todo funciona.

  1. Prueba tu sitio web o aplicación: Navega por todas las páginas, inicia sesión, realiza compras o cualquier acción que implique la base de datos.
  2. Revisa los logs de errores: En Syspanel, ve a Registros o Logs. Busca errores relacionados con la base de datos (por ejemplo, “Can’t connect to MySQL server” o “Table doesn’t exist”).
  3. Ejecuta una consulta de prueba: Desde la línea de comandos, prueba una consulta simple:
    SELECT COUNT(*) FROM nombre_de_tabla;
    
    Si devuelve un número, todo está bien.
  4. Verifica la versión de MariaDB:
    mysql --version
    
    Deberías ver algo como mariadb Ver 15.1 Distrib 10.x.x.

Preguntas Frecuentes (FAQ)

Aquí resolvemos las dudas más comunes que surgen durante este proceso.

¿Perderé mis datos al migrar?

No, si haces una copia de seguridad correcta. La migración en sí no borra nada, solo mueve los datos. El riesgo está en no hacer backup. Siempre guarda un respaldo antes.

¿Tengo que cambiar el código de mi sitio web?

Generalmente no. MariaDB es un reemplazo directo de MySQL. Las aplicaciones como WordPress, Drupal, Magento, etc., funcionan sin cambios. Solo si usas funciones muy específicas de MySQL (poco común) podrías tener problemas.

¿Syspanel (HestiaCP) soporta MariaDB?

Sí, completamente. Syspanel está diseñado para funcionar con MariaDB. De hecho, muchas instalaciones modernas de Syspanel ya vienen con MariaDB por defecto. El panel gestiona usuarios, bases de datos y permisos exactamente igual que con MySQL.

¿Qué puerto usa MariaDB?

El mismo que MySQL: 3306. No necesitas cambiar la configuración de conexión en tu aplicación.

¿Puedo tener MySQL y MariaDB al mismo tiempo?

Técnicamente sí, pero es complicado y no recomendado. Usan el mismo puerto por defecto, por lo que tendrías que cambiar el puerto de uno de ellos (ej. MariaDB en 3307) y configurar tu aplicación para que se conecte a ese puerto. Es más limpio tener solo uno.

¿Qué hago si después de migrar mi web da error de conexión?

  1. Verifica que MariaDB esté corriendo: sudo systemctl status mariadb.
  2. Comprueba las credenciales: Asegúrate de que el usuario y la contraseña en tu archivo de configuración (ej. wp-config.php en WordPress) sean correctos.
  3. Revisa los permisos en Syspanel: Ve a Bases de Datos y asegúrate de que el usuario esté vinculado a la base de datos.
  4. Reinicia el servicio web: sudo systemctl restart nginx (o apache2).

¿Es más rápido MariaDB que MySQL?

Sí, en la mayoría de los casos. Especialmente en consultas con muchas uniones (JOINs) y en motores de almacenamiento como Aria (para tablas temporales) y XtraDB (para transacciones). Notarás una mejora en el tiempo de carga de tu sitio.


Conclusión

Migrar de MySQL a MariaDB en Syspanel es un proceso seguro y muy beneficioso para el rendimiento de tu servidor. Siguiendo esta guía paso a paso, con copias de seguridad y verificaciones, no deberías tener ningún problema.

Recuerda que la paciencia es clave. Si algo sale mal, siempre puedes restaurar tu backup de MySQL y volver a empezar. Pero te aseguro que, una vez que pruebes MariaDB, no querrás volver atrás.

¡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