Я дотримувався цього підручника для встановлення MySQL, але після успішного встановлення MySQL я не зміг отримати доступ до бази даних.
ПОМИЛКА 1698 (28000): Доступ заборонено користувачеві 'root' @ 'localhost'
Я дотримувався цього підручника для встановлення MySQL, але після успішного встановлення MySQL я не зміг отримати доступ до бази даних.
ПОМИЛКА 1698 (28000): Доступ заборонено користувачеві 'root' @ 'localhost'
Відповіді:
Я знайшов рішення за посиланням тут , дотримуючись цього рішення, я вирішив свою проблему.
Короткі кроки:
sudo mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';
Примітка. Ось test
новий пароль для кореневого користувача. Також не забудьте запустити команду sudo service mysql restart
після зміни користувача.
Я знайшов ще один спосіб, який набагато кращий, оскільки нам не потрібно давати пароль для локальної системи.
Це як слід.
Відкрийте термінал і введіть
sudo mysql -u root -p
Він підкаже вас у mysql, тут ви можете запустити будь-які команди mysql.
Використовуйте таблицю mysql для зміни типу таблиці, щоб ми могли використовувати порожній пароль. Беллоу - це команда
USE mysql;
Тепер ми змінюємо тип таблиці, слідуючи команді
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
тепер ми повинні змити привілеї, оскільки ми використовували UPDATE. Якщо ви використовуєте INSERT, UPDATE або DELETE на таблицях грантів безпосередньо, вам потрібно використовувати PRIVILEGES FLUSH для перезавантаження таблиць грантів.
FLUSH PRIVILEGES;
тепер вийдіть з mysql, виконавши наступну команду
exit;
тепер перезапустіть сервер mysql, виконавши наступну команду
service mysql restart
Сподіваюся, це може допомогти
Дякую.