Establecer contraseña de root en MariaDB/MySQL en Ubuntu 18.04

Escrito por systeminside en y tuvo 2 comentarios
MariaDB

Hace unos días instalé Ubuntu Server 18.04 en una máquina virtual para montar un servidor web usando Nginx + MariaDB + HHVM + WordPress y realizar unas pruebas, y luego de seguir lo pasos habituales me percaté que cuando instalé MariaDB, no me salió la opción habitual de establecer una contraseña para el usuario root.

Sucedió entonces que cuando ejecuté el comando:

$ mysql_secure_installation

Para asegurar la base de datos y demás, no podía seguir porque no tenía la contraseña de administrador y tampoco me permitía dejarlo en blanco. Me puse a buscar un poco por Internet y encontré que MariaDB usa el complemento unix_socket para autenticar y no las contraseñas y que aún si configuramos una contraseña, esta se ignorará. Pero por suerte hay solución para esto.

Primero nos logueamos en MariaDB usando el comando:

sudo mysql -u root

Cuando nos pida poner la contraseña simplemente damos Enter (wtf? sin contraseña).. Una vez que hagamos esto ejecutamos los siguientes comandos:

use mysql;
update user set plugin='' where User='root';
flush privileges;
exit

Y posteriormente reiniciamos MariaDB:

sudo systemctl restart mariadb.service

Ahora volvemos a ejecutar el comando:

$ mysql_secure_installation

Y estas son las opciones que debemos marcar:

  • Enter current password for root (enter for none): Oprima Enter
  • Set root password? [Y/n]: Y
  • New password: Ponemos la contraseña que queramos
  • Re-enter new password: Repetimos la contraseña
  • Remove anonymous users? [Y/n]: Y
  • Disallow root login remotely? [Y/n]: Y
  • Remove test database and access to it? [Y/n]: Y
  • Reload privilege tables now? [Y/n]: Y

Y eso es todo.. ya podemos acceder como root.

MariaDB

systeminside

systeminside
Blogger, Melómano, Administrador de Sistemas, Diseñador Web.

¿Ideas? ¿Comentarios?

  1. rlsalgueiro 2 semanas atrás

    @elav esto es algo que hacemos los que usamos mariadb en ubuntu hace tiempo, cuando instalamos mariadb-server no nos pide clave como si lo hace mysql en el proceso de instalación así que después de terminar la instalación debemos ponerle clave al root usando `mysql_secure_installation`, lo que me llama la atención es que no te dejara pasar sin clave desde este comando que es lo que usualmente hace, ahora cuando comience a cambiar(actualizar) mis containers(CT) te comento.

    Responder
    1. @rlsalgueiro:

      Pues si, me pareció raro también que no me dejara con ese comando. 🤷🏻‍♂️

      Responder

¿...?