Это похоже на этот вопрос , но моя ситуация немного отличается.
У меня есть laravel, composer и valet, работающие на Ubuntu 18.04.Я пытаюсь запустить php artisan migrate
, и он выдает ошибки, связанные с невозможностью подключиться к базе данных mysql.
Illuminate\Database\QueryException : SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost' (SQL: select * from information_schema.tables where table_schema = blog and table_name = migrations)
at /home/david/Sites/blog/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664
660| // If an exception occurs when attempting to run a query, we'll format the error
661| // message to include the bindings with SQL, which will make this exception a
662| // lot more helpful to the developer instead of just the database's errors.
663| catch (Exception $e) {
> 664| throw new QueryException(
665| $query, $this->prepareBindings($bindings), $e
666| );
667| }
668|
Exception trace:
1 PDOException::("SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'")
/home/david/Sites/blog/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:68
2 PDO::__construct("mysql:host=127.0.0.1;port=3306;dbname=blog", "root", "", [])
/home/david/Sites/blog/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:68
мне кажется довольно очевидным, что файл .env не содержит нужной информации ... но он есть. вот мой .env для базы данных mysql:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=blog
DB_USERNAME=root
DB_PASSWORD=
База данных, в которую я пытаюсь войти, называется blog, имя пользователя - root, а пароль - пустой. Вот как я получаю доступ к mysql на своей машине ... sudo mysql -uroot -p
, и он регистрирует меня прямо в системе.
Есть идеи, что может пойти не так?
Вы только что перешли или обновились до Ubuntu 18.04?
Попробуйте первый ответ здесь: не может войти в систему как пользователь root mysql из учетной записи обычного пользователя в ubuntu 16.04