Cómo actualizar MariaDB en CentOS

LinuxMySQL

En esta guía vamos a ver cómo actualizar MariaDB a su última versión sistemas CentOS. Con cada nueva versión MariaDB es más estable e incorpora nuevas funcionalidades. Puedes ver las últimas novedades de cada versión de MariaDB en este enlace.

Acerca de MariaDB

MariaDB es un fork de MySQL. Su desarrollo comenzó tras la adquisición de MySQL por parte de Oracle. La mayoría de los desarrolladores de MariaDB son los mismos que trabajaban en mejorar MySQL, por lo que la calidad del producto está garantizada. MariaDB incorpora nuevas funcionalidades y mejora el rendimiento de MySQL. Si todavía utilizas MySQL, has de saber que MariaDB funciona de maravilla con casi cualquier aplicación que use MySQL, ya sea WordPress o cualquier otro software.

Cómo actualizar MariaDB en CentOS

Para actualizar MariaDB debes seguir estos sencillos pasos:

  1. Lo primero que debes hacer es crear una copia de seguridad del archivo my.cnf. Para ello, puedes usar este comando:

    cp /etc/my.cnf /etc/my.cnf.bak
  2. Ahora debes parar el servicio de mariadb/mysql:
    service mysql stop

    Si tu sistema usa SystemD, usa este comando en su lugar:

    systemctl stop mysqld

    Si tu versión de MariaDB es antigua y los comandos anteriores no funcionan, prueba a ejecutar este comando:

    service mariadb stop
  3. Ahora debes eliminar MariaDB de tu sistema operativo. Puedes estar tranquilo, ya que las bases de datos no se borrarán:
    • Si utilizas MariaDB 5.5 o anterior, usa estos comandos:
      rpm -e --nodeps galera
      yum remove mariadb mariadb-server
    • Si utilizas MariaDB 10 o posterior, usa estos comandos:
      rpm -e --nodeps galera
      yum remove MariaDB-server MariaDB-client

    Con esto, ya habrás eliminado MariaDB de tu sistema operativo, pero las bases de datos seguirán estando en tu unidad de almacenamiento.

  4. Ahora debes instalar la última versión de MariaDB. Al escribir este artículo es la versión 10.4, pero esta guía será válida para versiones posteriores siempre que no se use otro repositorio. Lo primero, instala el repositorio oficial (EPEL) de la última versión de MariaDB:
    yum install nano epel-release -y

    De este modo podrás utilizar el repositorio EPEL con el gestor de paquetes Yum. Si quieres, puedes consultar la siguiente guía de uso del repositorio EPEL en CentOS, aunque no es necesario para cumplir este propósito.

  5. Debes asegurarte de que no existe ningún archivo de MariaDB en el repositorio /etc/yum.repos.d. Si existe, crea una copia de seguridad del archivo. Para crear una copia de seguridad y eliminar el archivo original, usa este comando:
    mv /etc/yum.repos.d/mariadb.repo /etc/yum.repos.d/mariadb.repo.bak
  6. Para crear o editar el nuevo archivo de MariaDB en el repositorio usa este comando:
    nano /etc/yum.repos.d/mariadb.repo

    Hemos utilizado el editor nano, pero puedes utilizar vim o cualquier otro editor en lugar de nano. Copia y pega estas líneas en el archivo:

    [mariadb]
    name = MariaDB
    baseurl = http://yum.mariadb.org/10.4/centos7-amd64
    gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
    gpgcheck=1

    Nota: A la hora de redactar este artículo, la última versión de MariaDB es la 10.4. Para instalar una versión superior, basta con que cambies la versión 10.4 por la nueva versión en las líneas anteriores.

  7. Ahora ya puedes instalar la nueva versión de MariaDB. Para ello, usa estos comandos:
    yum clean all
    yum install MariaDB-server MariaDB-client net-snmp perl-DBD-MySQL -y
    yum update -y
  8. Restaura la copia de seguridad del archivo my.cnf creada en el primer paso:
    rm -rf /etc/my.cnf
    cp /etc/my.cnf.bak /etc/my.cnf
  9. Ahora debes activar MariaDB. Para ello usa estos comandos:
    systemctl enable mariadb
    service mysql start
  10. MariaDB ya está actualizado, pero todavía tienes que actualizar las bases de datos a la nueva versión. Para ello, usa este comando:
    mysql_upgrade

    Y con esto ya habrás completado la actualización de MariaDB a su última versión.

Comprueba la versión de MariaDB

Puedes comprobar la versión de MariaDB ejecutando este comando desde la terminal:

mysql

Esto ha sido todo.

 


Avatar de Edu Lazaro

Edu Lázaro: Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

👋 Hola! Soy Edu, me encanta crear cosas y he redactado esta guía. Si te ha resultado útil, el mayor favor que me podrías hacer es el de compatirla en Twitter 😊

Si quieres conocer mis proyectos, sígueme en Twitter.

7 comentarios en “Cómo actualizar MariaDB en CentOS

  1. Hola, pues me actualizó la versión, pero No me funciona mysql_upgrade, no lo reconoce como comando, intenté desde promp > mysql, pero no funcionó , los sitios web estan todos funcionando, pero aún muestran la versión anterior de mariadb, aunque phpmyadmin, dice que estamos sobre mariadb 1.0.4, me parece que No me actualizó las tablas.

  2. Buenos días, desde ya muchas gracias por el tutorial, anduvo perfecto, el único inconveniente que tengo es que a la hora de queres exportar una base de datos me arroja «error 500», lei en muchos tutoriales que tengo que modificar el «export.php» una línea donde dice «Break 2» a «Break», pero en el archivo esta comop break.

    Alguna idea de como solucionar este inconveniente?

  3. Saludos Cordiales.

    Solicito su apoyo por favor.

    Aparentemente todo funciono como deberia, pero al finalizar y hacer el Upgrade, envia un error fatal que dice:

    Reading datadir from the MariaDB server failed. Got the following error when executing the ‘mysql’ command client
    ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: NO)
    FATAL ERROR: Upgrade failed

    En conclusion, todo mi servidor ha caido, no hay webs, no hay correo y me temo lo peor, salvo, que puedan apoyarme de alguna manera.

    De antemano, gracias

    1. Estás como usuario root? Si no, prueba a ejecutar mysql_upgrade -u root -p. Introduce la contraseña del usuario root y debería funcionar.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

“- Hey, Doc. No tenemos suficiente carretera para ir a 140/h km. - ¿Carretera? A donde vamos, no necesitaremos carreteras.”