Решение ошибки #1698 — Access denied for user ‘root’@’localhost’

В сегодняшней статье разберемся как устранить ошибку:

#1698 – Access denied for user ‘root'@'localhost'

при попытке подключиться к БД из под root.

MySQL 5.7 изменила модель безопасности: теперь вход в MySQL под рутом (root) требует sudo (при этом пароль всё равно может быть пустым). Т.е. phpMyAdmin невозможно использовать под пользователем root.

Самым простым (и самым безопасным) решением будет создать нового пользователя и предоставить ему требуемые привилегии.

Но начнём мы с другого решения:

Разрешить пользователю root подключаться к MySQL без sudo

Для получения доступа к базе данных MySQL/MariaDB обычному пользователю без использования sudo привилегий, зайдите в приглашение командной строки MySQL

sudo mysql

и запустите следующие команды:

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

Или так:

use mysql;
UPDATE mysql.user SET authentication_string = PASSWORD('12345') WHERE User = 'root' AND Host = 'localhost';
update user set plugin='mysql_native_password' where User='root';
flush privileges;
exit

Затем перезапустите службу MySQL и попробуйте войти в базу данных без sudo, как показано ниже.

sudo systemctl restart mysql.service
mysql -u root -p

Создание нового пользователя

Подключитесь к mysql

sudo mysql --user=root mysql

Создайте нового пользователя с правами root

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'myuser'@'localhost';
FLUSH PRIVILEGES;
exit

После этого можете войти под новым пользователем (myuser) в вашу базу данных с правами как у root.

Если есть вопросы, то пишем в комментариях.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

0 0 vote
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

2 Комментарий
новее
старее большинство голосов
Inline Feedbacks
Просмотреть все комментарии
Eddy
Eddy
06.05.2020 23:13

Б^^^^Ь — никуя не работает, теперь и то что было невернуть никак- говносоветчик ::::::

ddddd
ddddd
18.03.2020 21:13

sudo mysql
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)