Laravel 5.5 не может выполнить начальную миграцию

Я пытаюсь выполнить первоначальную миграцию на новой установке laravel 5.5. Домашняя страница работает, но у меня, похоже, проблема с настройкой базы данных. Я использую MariaDB, и я могу без проблем подключиться к своей БД с помощью отдельного клиента БД. Также я могу без проблем повторить имя БД на экране приветствия. Ошибка ниже:

[Illuminate\Database\QueryException] не удалось найти драйвер (SQL: выберите * из information_schema.tables, где table_schema = TestApp и table_name = миграции)

[PDOException] не удалось найти драйвер

Код welcome.blade.php, который работает:

@if(DB::connection()->getDatabaseName()) <p>Database: {{ DB::connection()->getDatabaseName() }}</p> @endif

база данных.php

'связи' => [

    'sqlite' => [
        'driver' => 'sqlite',
        'database' => env('DB_DATABASE', database_path('database.sqlite')),
        'prefix' => '',
    ],

    'mysql' => [
        'driver' => 'mysql',
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'strict' => true,
        'engine' => null,
    ],

.env-файл

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=TestApp
DB_USERNAME=ubuntu
DB_PASSWORD=secret

person Billy Joe    schedule 19.02.2018    source источник
comment
После редактирования файла .env вы пробовали php artisan config:clear   -  person Rutvij Kothari    schedule 20.02.2018
comment
Пробовал так и не получилось.   -  person Billy Joe    schedule 20.02.2018


Ответы (1)


Возможно, вам нужно установить поддержку PHP PDO MySQL на ваш сервер/машину разработки.

Посмотрите на свой phpinfo() информацию о драйвере PDO MySQL. ЕСЛИ не существует, установите драйвер.

Если ваш сервер / dev-машина — Ubuntu, а ваша версия php — 7.0, попробуйте установить с помощью apt-get install, как это

sudo apt-get install php7.0-mysql

Вы можете использовать драйвер MySQL PDO с базой данных MariaDB.

person Edgar Orozco    schedule 19.02.2018
comment
Я только что обновил пост с дополнительной информацией. Также я могу без проблем повторить имя БД на экране приветствия. - person Billy Joe; 20.02.2018
comment
то вы правильно установили драйвер PDO MySql? Если нет, то это проблема, которую нужно решить. - person Edgar Orozco; 20.02.2018
comment
Я предполагал, что драйвер установлен правильно, потому что мое приложение подключается к БД, когда я попадаю на домашнюю страницу. Но, может быть, это не гарантирует, что миграция тоже будет работать? Когда я вывожу phpinfo(), для части mysql я получаю MySQL driver for PDO George Schlossnagle, Wez Furlong, Ilia Alshanetsky, Johannes Schlueter - person Billy Joe; 20.02.2018
comment
Спасибо, в итоге увидел, что мой комментарий выше был неправильным, драйвер PDO не был установлен. - person Billy Joe; 20.02.2018