Я подготовил два сервера с помощью Laravel Forge. Я запускаю приложение на сервере A и хочу получить доступ к базе данных, которая находится на сервере B.
Итак, я настроил свою базу данных следующим образом:
'pgsql' => [
'driver' => 'pgsql',
'host' => env('EXTERNAL_DB_HOST', '138.31.32.33'),
'database' => env('EXTERNAL_DB_DATABASE', 'forge'),
'username' => env('EXTERNAL_DB_USERNAME', 'forge'),
'password' => env('EXTERNAL_DB_PASSWORD', ''),
'charset' => 'utf8',
'prefix' => '',
'schema' => 'public',
],
Я ввел учетные данныеСервер Б. Затем я пытаюсь запустить Tinker, который использует Соединение:
>>> $d = \App\Foobar::first();
Illuminate/Database/QueryException with message 'SQLSTATE[08006] [7] timeout expired (SQL: select * from "foobars" where "foobars"."deleted_at" is null limit 1)'
. Выдает ошибку:
SQLSTATE [08006] [7] истекло время ожидания
Я могу получить доступ к Серверу B через Сервер A: ssh forge@138.31.32.33
. Я получил доступ к этому Серверу B. Но я все еще получаю тайм-аут. Что мне не хватает? Как я могу получить доступ к "внешней" базе данных?