ОШИБКА 1698 (28000): Доступ запрещен для пользователя 'root'@'localhost' в Ubuntu 18.04

Я следил за этим руководство чтобы установить MySQL, но после успешной установки MySQL я не смог получить доступ к базе данных.

ОШИБКА 1698 (28000): Доступ запрещен для пользователя 'root'@'localhost'

Я нашел решение здесь ссылка, следуя этому решению, я решил свою проблему.

Короткие шаги - это:

sudo mysql -u rootALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test'; 

Примечание: здесь test это новый пароль для пользователя root. Кроме того, не забудьте выполнить команду sudo service mysql restart после изменения пользователя.

Я нашел другой способ, который намного лучше, так как нам не нужно указывать какой-либо пароль для локальной системы.
Это происходит следующим образом.

Откройте терминал и введите

sudo mysql -u root -p

Это подскажет вам в mysql, здесь вы можете запускать любые команды mysql.

Используйте таблицу mysql для изменения типа таблицы, поэтому мы можем использовать пустой пароль. Ниже приведена команда для этого

USE mysql;

Теперь мы меняем тип таблицы, выполнив следующую команду

UPDATE user SET plugin='mysql_native_password' WHERE User='root';

теперь мы должны сбросить привилегии, потому что мы использовали ОБНОВЛЕНИЕ. Если вы используете INSERT, UPDATE или DELETE на таблицы грантов непосредственно вам нужно использовать ПРИВИЛЕГИИ СБРОСА, чтобы перезагрузить таблицы предоставления.

FLUSH PRIVILEGES;

теперь выйдите из mysql, выполнив следующую команду

exit;

теперь перезапустите сервер mysql, выполнив следующую команду

service mysql restart

Надеюсь, это может помочь

Спасибо.

Я столкнулся с той же проблемой, после некоторого копания понял, что вам нужно самостоятельно установить пароль root, следуя инструкциям на StackOverFlow.