SQLSTATE[HY000] [1045] Доступ запрещен для пользователя "root" @ "localhost" (с использованием пароля: YES)?

.env файл

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=task
DB_USERNAME=root
DB_PASSWORD=******

Список всех баз данных mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | nodeDB | | performance_schema | | phpmyadmin | | pythonDB | | sys | | task | +--------------------+ 8 rows in set (0.13 sec)

Уже пробовал эти решения

SQLSTATE[HY000] [1045] Доступ запрещен для пользователя username @ localhost (с использованием пароля: YES)

Доступ запрещен для пользователя 'root'@'localhost' (с паролем: ДА) - Нет привилегий?

1 ответ

Если вы можете войти в консоль mysql. Затем попробуйте распечатать пользователей Mysql с помощью следующих команд.

SELECT user,authentication_string,plugin,host FROM mysql.user;

Если ты найдешь root имеет плагин типа auth_socket, то либо вам нужно изменить его на mysql_native_password следующей командой.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Не забудьте заменить password с вашим паролем.

Затем очистите привилегии с помощью FLUSH PRIVILEGES;

Кроме того, вы можете создать другого пользователя и предоставить ему права.

CREATE USER 'ankush'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'ankush'@'localhost' WITH GRANT OPTION;
Другие вопросы по тегам