Настройка доступа к БД в Laravel

Настройки работы с БД хранятся в файле config/database.php. Здесь вы можете указать все используемые вами соединения к БД, а также задать соединение по умолчанию. Примеры настройки большинства поддерживаемых видов подключений находятся в этом же файле.

Laravel поддерживает различные движки базы данных: MySQL, Postgres, SQLite, SQL Server. Движок по умолчанию указан в следующей настройке:

config/database.php<?php
  'default' => env('DB_CONNECTION', 'mysql'),
?>

Скорее всего вы будете использовать движок mysql, поэтому нужно настроить доступы к вашей базе именно для этого движка.

Для этого в подмассиве connections найдите подмассив mysql и введите там доступы к вашей базе:

config/database.php<?php
  'mysql' => [
    'driver' => 'mysql',
    'host' => env('DB_HOST', '127.0.0.1'),
    'port' => env('DB_PORT', '3306'),
    'database' => env('DB_DATABASE', 'test'), // !
    'username' => env('DB_USERNAME', 'root'), // !
    'password' => env('DB_PASSWORD', 'root'), // !
    'unix_socket' => env('DB_SOCKET', ''),
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
    'prefix' => '',
    'strict' => true,
    'engine' => null,
  ],
?>

После этого перезапустите проект с помощью команды:

terminalphp artisan serve
Задание 1

Создайте базу данных через PMA (PhpMyAdmin). Пропишите ее в конфигурации Laravel.

Возможные проблемы

Не факт, что после этого Laravel сможет подключиться к базе. Дело в том, что файл с настройками кешируется и это может привести к проблемам, которые будут выражаться в ошибке Access denied for user 'homestead'@'localhost' при попытке подключится к БД.

Решение проблемы описано тут: stackoverflow.com.