проблемы с подключением к базе данных в laravel 5
Я использую команду php artisan migrate
для переноса подключения к базе данных, но я все равно получаю ту же ошибку, и я проверил все, ничего плохого. Я использовал то же соединение, которое я всегда использую в Laravel 4.2
вот сообщение, которое я получаю на своей консоли:
exception 'PDOException' with message 'SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES)' in C:xampphtdocsProjectsblogvendorlaravelframeworksrcIlluminateDatabaseConnectorsConnector.php:47
8 ответов
вам нужно изменить значения в вашей .env файл, расположенный в корневой папке вашего проекта.
Если нет .env файл, скопировать .env.пример файла .env.
Laravel использует этот файл для защиты ваших паролей. Значения, которые вы устанавливаете, используются только в том случае, если конфигурация недоступна .env файл, homestead является стандартным пользователем там.
вы можете пойти .файл env. Файл доступен в корневой папке проекта.
тогда некоторые здесь связаны с вашей базой данных.
затем выполните команду ниже, чтобы очистить старый кэш конфигурации.
php artisan config: очистить
есть эта проблема, а также. После обновления .env и run php artisan config:clear
проблема все еще сохраняется! Затем после остановки сервера и перезапуска сервера снова с помощью php artisan serve
, проблема исправлена!
измените следующий атрибут из базы данных.в PHP
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
]
to
'mysql' => [
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'laravel',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
Это должно хорошо работать, тогда выполните следующую команду:
php artisan migrate:install
Я решаю эту проблему с помощью обновления .env-файл с конфигурацией / базой данных.PHP-файл.
вот мой конфигурация / база данных.в PHP структура (я использую mysql)
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'database' => env('DB_DATABASE', 'larablog'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false,
],
и .файл env структура (то же самое, что конфигурация / база данных.в PHP)
DB_HOST=localhost // Host name
DB_DATABASE=larablog // Database name
DB_USERNAME=root // Database User
DB_PASSWORD= // Db password(No password here)
Я получал ту же ошибку после обновления database info В моем .файл env. Исправлена проблема выхода из командной строки и повторный запуск это помогло мне и может помочь тебе.
Если вы используете sqlite в качестве базы данных, убедитесь, что у вас установлен php5-sqlite
sudo apt-get install php5-sqlite
если он установлен, это может быть проблема с вашей .файл env. Заменить
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
С
DB_CONNECTION=sqlite
DB_HOST=127.0.0.1
DB_PORT=3306