Я установил pgsql и настроил свой config / database.php для Laravel следующим образом:
'connection_name' => [
'driver' => 'pgsql',
'host' => env('DB_HOST_2', '127.0.0.1'),
'port' => env('DB_PORT_2', '3306'),
'database' => env('DB_DATABASE_2'),
'username' => env('DB_USERNAME_2'),
'password' => env('DB_PASSWORD_2', ''),
'sslmode' => env('DB_SSLMODE_2'),
'charset' => 'utf8',
'prefix' => '',
'options' => [
'sslcert' => '/some/special/path.crt',
],
'schema' => 'public',
],
'имя_соединения' находится в разделе 'подключений' database.php
.
В ремесленнике я получаю следующую ошибку, потому что она все еще ищет в расположении по умолчанию для сертификата SSL. Я не могу заставить его искать в нужном месте сертификат.
>>> use Illuminate\Support\Facades\DB;
>>> DB::connection('connection_name')->getPdo()
Doctrine\DBAL\Driver\PDOException with message 'SQLSTATE[08006] [7] root certificate file "/home/wes/.postgresql/root.crt" does not exist
Either provide the file or change sslmode to disable server certificate verification.'