Windows 10 PDOException с сообщением "не удалось найти драйвер" Laravel 5.6.33 Wampserver 3.1.7 x86

Я знаю, что есть много вопросов по этой теме, касающихся Stackru, но моя проблема в том, что у меня уже нет комментариев к расширениям php, я внес необходимые изменения в database.php и.env, и я объявил и использовал необходимый путь к среде. Единственное, что я не сделал, это установил composer из-за моих ограничений прокси. У меня есть прокси-сервер поверх Kerberos Windows AD, и по какой-то причине больше ничего не работало с адресом прокси-сервера, портом и учетными данными (пользователь и пароль), поэтому я нашел этот веб-сайт для загрузки библиотек php и их зависимостей без composer и удалось заставить Laravel 5.6.33 работать или, по крайней мере, по-видимому, потому что, когда я пытался позвонить: C:\wamp\www\laravel> php artisan migrate:install я получил следующую ошибку:Illuminate\Database\QueryException : could not find driver (SQL: create table "migrations" ("id" serial primary key not null, "migration" varchar(255) not null, "batch" integer not null))и следующая трассировка исключений: `трассировка исключений:

1 PDOException::("не удалось найти драйвер") C: \ wamp \ www \ laravel \ vendor \ laravel \ framework \ src \ Illuminate \ Database \ Connectors \ Connector.php: 68

2 PDO:: __ construct ("pgsql: host = localhost; dbname = tienda; port = 5432", "postgres", "admin123", []) C: \ wamp \ www \ laravel \ vendor \ laravel \ framework \ src \ осветить \Database\Connectors\Connector.php:68`

Я должен сказать, что я работаю на Windows 10 версии 10.0.17134.1 64 бит и мой сервер wamp 3.1.7 с php 7.2.14

Любая помощь или указатель по этому вопросу будут оценены

1 ответ

После долгих исследований и разочарований я решил попробовать xampp и обнаружил, что при установленном xampp xampp-win32-7.3.0-0-VC15.exe правильные расширения включены в php.ini.

extension=pdo_pgsql
extension=pgsql

который в случае Xamp расположен в

C:\ XAMPP \ PHP

Я установил путь для xampp php в Windows 10 Ent, это C:\xampp\php, а затем запустил команду

php C:\wamp\www\laravel> php ремесленник тинкер

после того как в тинкере консоль запустится

Psy Shell v0.9.9 (PHP 7.3.0 - cli), Джастин Хилман >>> DB::connection()->getPdo()

И я получил то, на что надеялся:

    => PDO {#2863
     inTransaction: false,
     attributes: {
       CASE: NATURAL,
       ERRMODE: EXCEPTION,
       PERSISTENT: false,
       DRIVER_NAME: "pgsql",
       SERVER_INFO: "PID: 1764; Client Encoding: UTF8; Is Superuser: on; Session Authorization: postgres; Date Style: ISO, MDY",
       ORACLE_NULLS: NATURAL,
       CLIENT_VERSION: "9.6.9",
       SERVER_VERSION: "9.6.11",
       STATEMENT_CLASS: [
         "PDOStatement",
       ],
       EMULATE_PREPARES: false,
       CONNECTION_STATUS: "Connection OK; waiting to send.",
       DEFAULT_FETCH_MODE: BOTH,
     },
   }

Ответ, который означает, что он нашел драйвер, который всегда был там и мог использовать для доступа к базе данных, которая уже была установлена ​​и работает.

Остальные настройки, сделанные в wamp с виртуальным хостом и расширениями, включенными в версии PHP 7.3.1, одинаковы и работают как шарм.

Я надеюсь, что это может помочь другим, пока команды Wamp и Laravel не найдут способ сделать Laravel

php ремесленник мигрировать

команда для работы с wamp 3.1.7 только для архитектуры x86.

Другие вопросы по тегам