Cannot connect to PgSQL via Laravel SQLSTATE[08006] [7] FATAL

末鹿安然 提交于 2019-12-06 08:05:01

问题


I'm trying to connect to pgsql via laravel and finally got everything setup (pgsql server running, pdo installed, all libs installed). I'm running on a VPS (CentOS) managed via CPanel/WHM.

Here's what I'm doing: I'm trying to create a user database via artisan (Laravel's command line) using migrate:install.

For those that don't use Laravel, artisan uses php's PDO for pgsql to connect. Here are my settings:

    'pgsql' => array(
        'driver'   => 'pgsql',
        'host'     => 'localhost',
        'database' => 'dbname',
        'username' => 'username',
        'password' => 'password',
        'charset'  => 'utf8',
        'prefix'   => '',
    ),

I've also setup a test.php file:

$dbconn = pg_connect("host=localhost port=5432 dbname=dbname user=username password=password");

which also fails. I used phpPgAdmin to see what's up and all of the permissions are set correctly, the database shows up, the username is correct, same with password. I checked where postgre (version 8.4.12 btw) was running and phpPgAdmin tells me "localhost:5432".

The error I get via the command line is the following:

SQLSTATE[08006] [7] FATAL: no pg_hba.conf entry for host "::1", user "myusername", database "my_database", SSL OFF

Now, I tried to find the pg_hba.conf file but I'm not entirely sure where to look for it. Same goes for the error/access logs for pg and google hasn't been any help as far as this goes.

Any idea on what I can do?


回答1:


localhost points to IPV6 ::1 address on your system. Postgresql makes the difference between ipv6 and ipv4 addresses when dealing with access list.




回答2:


I was able to install/configure everything correctly. I changed the "host" to 127.0.0.1, not sure why that made a difference but it did :)



来源:https://stackoverflow.com/questions/11972121/cannot-connect-to-pgsql-via-laravel-sqlstate08006-7-fatal

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!