Невозможно подключиться по паролю после установки MariaDB 10
При установке MariaDB 10
на чистую ubuntu, инсталлер не запросил ввести пароль, а после установки подключиться к mysql стало возможно только через терминал. В противном случае возвращается ошибка ERROR 1698 (28000): Access denied for user 'root'@'localhost'
. Почему так получилось и что с этим делать? Об этом и поговорим.
Дело в том, что при установке подключается плагин auth_socket для суперпользователя. Он содержится в поставке MariaDB начиная с версии 5.2.0
, что в плане безопасности очень правильно. Но если по какой-то причине вам нужно его отключить, то об этом в следующем обзаце.
Чтобы разрешить подключения не только через сокет, нужно отключить использование вышеупомянутого плагина для пользователя root. Все, что нужно - это подключиться через терминал:
mysql -uroot
Выбрать БД mysql
и очистить поле plugin
в таблице user
:
use mysql; update user set plugin='' where User='root'; flush privileges; exit;
Все готово. Теперь можно подключиться к mysql не только через терминал.