Cómo migrar bases de datos de MySQL a MariaDB en Syspanel
¿Por qué migrar de MySQL a MariaDB en Syspanel?
Si estás gestionando sitios web o aplicaciones en un servidor con Syspanel, es probable que te hayas encontrado con la necesidad de migrar tus bases de datos de MySQL a MariaDB. Esta migración es cada vez más común porque MariaDB ofrece mejor rendimiento, más características de seguridad y es completamente compatible con MySQL. En Syspanel, el proceso es sencillo y no debería causar tiempos de inactividad si se sigue correctamente.
En esta guía te explicaré paso a paso cómo realizar la migración de tus bases de datos MySQL a MariaDB dentro del panel Syspanel (accesible por el puerto 2106). No necesitas ser un experto en bases de datos, solo seguir las instrucciones con cuidado.
[INFO] MariaDB es un fork de MySQL creado por los desarrolladores originales de MySQL. Es 100% compatible a nivel de código y comandos SQL, por lo que tu aplicación no notará la diferencia.
Preparación antes de la migración
Antes de comenzar, asegúrate de tener lo siguiente:
- Acceso a Syspanel (puerto 2106) con permisos de administrador.
- Acceso SSH al servidor (con usuario root o con sudo).
- Una copia de seguridad actualizada de todas tus bases de datos.
- Lista de todas las bases de datos que necesitas migrar.
[WARNING] Siempre realiza una copia de seguridad completa antes de cualquier cambio en bases de datos. Una migración mal hecha puede provocar pérdida de datos.
Paso 1: Identificar las bases de datos MySQL en Syspanel
Lo primero es saber qué bases de datos tienes en tu servidor. Desde Syspanel puedes ver esta información fácilmente.
- Inicia sesión en Syspanel usando tu navegador:
https://tudominio.com:2106 - Ve a la sección Bases de datos en el menú lateral.
- Anota todos los nombres de bases de datos, usuarios y contraseñas que aparecen.
También puedes verificarlo por SSH:
mysql -u root -p -e "SHOW DATABASES;"
Te pedirá la contraseña root de MySQL. Anota todas las bases de datos que no sean del sistema (como mysql, information_schema, performance_schema).
Paso 2: Realizar copias de seguridad de todas las bases de datos
Este es el paso más importante. Vamos a exportar cada base de datos a un archivo .sql.
- Conéctate por SSH a tu servidor.
- Ejecuta el siguiente comando para exportar todas las bases de datos (excepto las del sistema):
mysqldump -u root -p --all-databases > /root/backup_completo.sql
Si prefieres exportar solo bases de datos específicas:
mysqldump -u root -p nombre_base > /root/backup_nombre_base.sql
También puedes usar Syspanel para hacer backups:
- En Syspanel, ve a Bases de datos.
- Junto a cada base de datos, haz clic en el icono de Exportar o Backup.
- Descarga los archivos
.sqla tu computadora.
[TIP] Guarda los backups en un lugar seguro fuera del servidor (como tu PC o un almacenamiento en la nube).
Paso 3: Detener servicios y desinstalar MySQL
Para evitar conflictos, debemos detener MySQL y desinstalarlo antes de instalar MariaDB.
-
Detén el servicio MySQL:
systemctl stop mysql -
Deshabilita MySQL para que no inicie automáticamente:
systemctl disable mysql -
Desinstala MySQL (esto no eliminará tus datos, solo los binarios):
apt remove mysql-server mysql-client -y # En Debian/Ubuntu # o yum remove mysql-server mysql -y # En CentOS/RHEL -
Limpia los paquetes residuales:
apt autoremove -y
[INFO] No te preocupes, los archivos de datos de MySQL (en
/var/lib/mysql) no se eliminan con este comando. Tus bases de datos siguen ahí.
Paso 4: Instalar MariaDB
Ahora instalaremos MariaDB, que reemplazará a MySQL.
-
Actualiza los repositorios:
apt update # Debian/Ubuntu # o yum update # CentOS/RHEL -
Instala MariaDB:
apt install mariadb-server mariadb-client -y # Debian/Ubuntu # o yum install mariadb-server mariadb -y # CentOS/RHEL -
Inicia y habilita MariaDB:
systemctl start mariadb systemctl enable mariadb -
Verifica que MariaDB esté funcionando:
systemctl status mariadb
Deberías ver un mensaje verde indicando que el servicio está activo.
Paso 5: Configurar MariaDB y asegurar la instalación
MariaDB necesita una configuración inicial básica.
-
Ejecuta el script de seguridad:
mysql_secure_installation -
Responde las preguntas:
- Establece una contraseña para root (puede ser la misma que tenías en MySQL).
- Elimina usuarios anónimos: Y.
- Desactiva acceso root remoto: Y (a menos que lo necesites).
- Elimina bases de datos de prueba: Y.
- Recarga privilegios: Y.
[WARNING] Si tenías una contraseña root en MySQL, MariaDB no la conservará. Deberás volver a configurarla.
Paso 6: Importar las bases de datos a MariaDB
Ahora vamos a restaurar tus bases de datos desde los backups que creaste.
-
Si exportaste todas las bases de datos en un solo archivo:
mysql -u root -p < /root/backup_completo.sql -
Si exportaste bases de datos individuales:
mysql -u root -p nombre_base < /root/backup_nombre_base.sql -
Verifica que las bases de datos se hayan importado correctamente:
mysql -u root -p -e "SHOW DATABASES;"
Deberías ver todas tus bases de datos listadas.
Paso 7: Recrear usuarios y permisos en MariaDB
Los usuarios de MySQL no se migran automáticamente con los datos. Debes crearlos nuevamente en MariaDB.
-
Accede a la consola de MariaDB:
mysql -u root -p -
Crea los usuarios con los mismos nombres y contraseñas que tenían:
CREATE USER 'nombre_usuario'@'localhost' IDENTIFIED BY 'contraseña'; GRANT ALL PRIVILEGES ON nombre_base.* TO 'nombre_usuario'@'localhost'; FLUSH PRIVILEGES; -
Repite para cada usuario que necesites.
[TIP] Si no recuerdas las contraseñas, puedes consultar los archivos de configuración de tu aplicación (por ejemplo,
wp-config.phpen WordPress) o generarlas nuevas y actualizar la aplicación.
Paso 8: Configurar Syspanel para que use MariaDB
Syspanel necesita saber que ahora usamos MariaDB en lugar de MySQL.
-
Edita el archivo de configuración de Syspanel:
nano /usr/local/syspanel/conf/mysql.conf -
Asegúrate de que las líneas apunten a MariaDB (normalmente no cambia nada, pero verifica):
MYSQL_HOST=localhost MYSQL_PORT=3306 MYSQL_USER=root MYSQL_PASSWORD=tu_contraseña_root -
Guarda el archivo y reinicia Syspanel:
systemctl restart syspanel -
Accede a Syspanel (puerto 2106) y verifica que las bases de datos aparezcan en la sección Bases de datos.
Paso 9: Verificar que todo funcione correctamente
Antes de dar por terminada la migración, realiza estas comprobaciones:
-
Desde Syspanel: Ve a la sección Bases de datos y confirma que todas las bases de datos estén listadas con sus tablas.
-
Desde tu aplicación: Accede a tu sitio web o aplicación y verifica que funcione correctamente. Prueba a iniciar sesión, crear contenido, etc.
-
Desde la línea de comandos:
mysql -u root -p -e "SELECT VERSION();"Debería mostrar algo como
10.x.x-MariaDB. -
Revisa los logs de errores:
tail -f /var/log/mariadb/mariadb.log
[WARNING] Si tu aplicación muestra errores de conexión a la base de datos, revisa las credenciales en los archivos de configuración de la aplicación.
Preguntas frecuentes (FAQ)
¿Puedo migrar sin detener mi sitio web?
Sí, si sigues los pasos correctamente. Lo ideal es hacer la migración en horas de bajo tráfico. El tiempo de inactividad será solo el necesario para detener MySQL e iniciar MariaDB (unos segundos).
¿Se pierden datos durante la migración?
No, si realizas correctamente el backup y la importación. Los datos se mantienen intactos en /var/lib/mysql.
¿MariaDB es compatible con todas las aplicaciones que usaban MySQL?
Sí, es 100% compatible. No deberías tener problemas con WordPress, Joomla, Drupal, etc.
¿Necesito cambiar algo en mi código PHP o en las aplicaciones?
No, MariaDB usa el mismo protocolo y los mismos comandos SQL. Tus aplicaciones no notarán la diferencia.
¿Qué hago si después de la migración Syspanel no muestra las bases de datos?
Revisa la configuración en /usr/local/syspanel/conf/mysql.conf y asegúrate de que la contraseña de root sea correcta. También puedes reiniciar Syspanel.
Conclusión
Migrar de MySQL a MariaDB en Syspanel es un proceso sencillo si lo haces paso a paso. Recuerda siempre hacer backups, verificar cada etapa y probar tu aplicación antes de dar por terminada la migración. MariaDB te ofrecerá un mejor rendimiento, más seguridad y actualizaciones más frecuentes, todo mientras mantienes la compatibilidad total.
Si en algún momento te sientes inseguro, no dudes en contactar al soporte técnico de Syspanel. ¡Feliz migración!
