SQLSTATE[HY000] [1045] Доступ запрещен для пользователя
Я начал свой первый веб-сайт (в разработке) с простой структуры аутентификации. Когда я запускаю свой сайт в Homestead, соединение с базой данных не работает. На самом деле я могу запустить любую команду mysql из терминала или верстак mysql, но когда я пытаюсь из браузера (homestead.app), я получаю эту ошибку.
SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)
Вот мой .env
Информация.
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
Я изменил разрешение и перезапустил сервер, но результат тот же!
Может кто-нибудь помочь, пожалуйста?
1 ответ
Это потому, что вы не предоставили доступ этому конкретному пользователю на локальном хосте. Чтобы исправить это, используйте это:
- Введите MySQL (будьте осторожны:
root
вот корень MySQL, а не корень Ubuntu - вы также можете использовать других пользователей, имеющих достаточный уровень доступа):
$ mysql --user=root --password=root_password homestead
- В MySQL предоставьте доступ следующим образом (в этом случае создайте пользователя 'homestead' @ 'localhost' и дайте ему право выбора для всего из БД
homestead
):
CREATE USER 'homestead'@'localhost' IDENTIFIED BY 'secret'; GRANT SELECT PRIVILEGES ON homestead.* to 'homestead'@'localhost' IDENTIFIED BY 'secret';
Обратитесь к руководству MySQL для получения дополнительной информации о других опциях.
При этом желательно размещать такие вопросы на других сайтах, посвященных администрированию БД.