#javascript #node.js #postgresql
#javascript #node.js #postgresql
Вопрос:
Я использую node.js для подключения к моей базе данных postgres.
Я меняю способ создания соединения с моей базой данных postgres, чтобы указать максимальное количество подключений.
Это существующий фрагмент кода: (я заменил фактического пользователя / пароль на user и password; имя базы данных совпадает с именем пользователя)
// Load and initialize pg-promise:
const pgp = require('pg-promise')(initOptions);
let cn = process.env.DATABASE_URL_FULL
// Create the database instance:
const db = pgp(cn);
Где DATABASE_URL_FULL = postgres://user:password@manny.db.elephantsql.com:5432/user
Это работает нормально. Однако, когда я использую это:
// Load and initialize pg-promise:
const pgp = require('pg-promise')(initOptions);
// Connection parameters
const cn = {
host: process.env.DATABASE_URL,
port: process.env.DATABASE_PORT,
database: process.env.DATABASE_NAME,
user: process.env.DATABASE_USER,
password: process.env.DATABASE_PASSWORD,
max: process.env.DATABASE_MAX_CON,
idleTimeoutMillis: process.env.DATABASE_IDLE_TIMEOUT
};
// Create the database instance:
const db = pgp(cn);
Где DATABASE_URL = manny.db.elephantsql.com
Я получаю эту ошибку:
Unhandled rejection Error: getaddrinfo ENOTFOUND postgres://manny.db.elephantsql.com postgres://manny.db.elephantsql.com:5432
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:56:26)
Заранее большое спасибо!
Комментарии:
1. Хорошо, я заметил, что, хотя я установил переменную среды на
manny.db.elephantsql.com
, она все еще использовалаpostgres://manny.db.elephantsql.com
это очень странно. Я очистил свои переменные среды, перезагрузил и установил их снова. теперь он работает на моей машине разработки (используя URL elephantsql) — следующий шаг, протестируйте его в моем экземпляре GCP.