Авторизация в MariaDB возможна без пароля с привилегированной учетной записи linux.
Параметр включающий данное "поведение" находится в таблицу
mysql.users и имеет значение
unix_socket. В debian 9+ по умолчанию плагин погружающий
auth_socket.so включен.
Данная информация также актуальна для устройств семейства Synlogy.
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'xxx' WITH GRANT OPTION;
INSTALL SONAME 'auth_socket';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED VIA unix_socket WITH GRANT OPTION;
Измените поле plugin а таблицу с юзерами с mysql_native_password на unix_socket, убедитесь что плагин включен и установлен
SELECT * FROM information_schema.PLUGINS;
перезагрузите службу mysqld. Теперь можно заходить из под рута без пароля:
sudo mysql -u[mysqluser]
> sudo mysql -uroot
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2
Server version: 10.3.21-MariaDB Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
https://mariadb.com/kb/en/authentication-plugin-un...