连接postgres与laravel

时间:2017-04-26 14:42:14

标签: php postgresql laravel laravel-5 laravel-5.4

您好我正在尝试使用postgres连接laravel 5.4,更新数据库配置文件并运行php artisan migrate后,会出现以下错误:

[Illuminate\Database\QueryException]
 could not find driver (SQL: select * from information_schema.tables where t
 able_schema = public and table_name = migrations)
[PDOException]
 could not find driver

这是我的.env文件

DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=Portail
DB_USERNAME=php
DB_PASSWORD=php

这是我的database.php文件

'default' => env('DB_CONNECTION', 'pgsql'),
 'pgsql' => [
            'driver' => 'pgsql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '5432'),
            'database' => env('DB_DATABASE', 'Portail'),
            'username' => env('DB_USERNAME', 'php'),
            'password' => env('DB_PASSWORD', 'php'),
            'charset' => 'utf8',
            'prefix' => '',
            'schema' => 'public',
            'sslmode' => 'prefer', ], 

我通常使用phpPgAdmin

3 个答案:

答案 0 :(得分:4)

sudo apt-get install php-pgsql。这是在linux中安装php pgsql驱动程序的命令

答案 1 :(得分:0)

我发现解决方案有两个php.ini文件

  • C:\ wamp64 \ BIN \阿帕奇\ apache2.4.9 \ BIN

  • C:\ wamp64 \ BIN \ PHP中\ php7.0.10

我必须在两个文件中取消注释php_pdo_pgsql.dll和php_pgsql.dll 谢谢你的帮助

答案 2 :(得分:0)

我在使用 php7.4 的 Ubuntu18.04 上遇到了类似的问题 解决方案:

  • 首先用 php -v 检查你的 PHP 版本,在我的例子中,版本是 php7.4,所以用 apt-get install php7.4-pgsql 安装了必要的驱动程序

  • 最后重启PHP服务器