33 lines
727 B
JavaScript
33 lines
727 B
JavaScript
import pg from "pg";
|
|
import dotenv from "dotenv";
|
|
|
|
dotenv.config();
|
|
|
|
const { Pool } = pg;
|
|
|
|
const pool = new Pool(
|
|
process.env.DATABASE_URL
|
|
? { connectionString: process.env.DATABASE_URL }
|
|
: {
|
|
host: process.env.DB_HOST || "localhost",
|
|
port: process.env.DB_PORT || 5432,
|
|
user: process.env.DB_USER,
|
|
password: process.env.DB_PASSWORD,
|
|
database: process.env.DB_NAME,
|
|
max: 20,
|
|
idleTimeoutMillis: 30000,
|
|
connectionTimeoutMillis: 2000,
|
|
}
|
|
);
|
|
|
|
pool.on("connect", () => {
|
|
console.log("Connected to PostgreSQL database");
|
|
});
|
|
|
|
pool.on("error", (err) => {
|
|
console.error("Unexpected error on idle client", err);
|
|
process.exit(1);
|
|
});
|
|
|
|
export default pool;
|