קישור node-postgres למסד נתונים של ניב PostgreSQL

בדף הזה מוסבר איך לקשר את מנהל ההתקן node-postgres של PostgreSQL למסד נתונים של ניב PostgreSQL ב-Spanner. ‏node-postgres הוא מנהל התקן של Node.js ל-PostgreSQL.

  1. מוודאים ש-PGAdapter פועל באותו מחשב שבו פועלת האפליקציה שמתחברת באמצעות מנהל ההתקן node-postgres של PostgreSQL.

    מידע נוסף זמין במאמר בנושא הפעלת PGAdapter.

  2. מציינים את המארח והיציאה של שרת מסד הנתונים בnode-postgres מאפייני החיבור:

    const { Client } = require('pg');
    const client = new Client({
      host: 'APPLICATION_HOST',
      port: PORT,
      database: 'DATABASE_NAME',
    });
    await client.connect();
    const res = await client.query("select 'Hello world!' as hello");
    console.log(res.rows[0].hello);
    await client.end();
    

    מחליפים את מה שכתוב בשדות הבאים:

    • APPLICATION_HOST: שם המארח או כתובת ה-IP של המכונה שבה PGAdapter פועל. אם מריצים באופן מקומי, אפשר להשתמש ב-localhost.
    • PORT: מספר היציאה שבה PGAdapter פועל. אם PGAdapter פועל ביציאה מותאמת אישית, צריך לשנות את ההגדרה הזו במחרוזת החיבור. אחרת, משתמשים ביציאה שמוגדרת כברירת מחדל, 5432.

Unix domain sockets

בקטע הזה מוסבר איך להשתמש בשקעי דומיין של Unix כדי לקשר מנהל התקן של PostgreSQL node-postgres למסד נתונים של ניב PostgreSQL. משתמשים בחיבורים של שקע דומיין של Unix כשצריך להשיג את זמן האחזור הנמוך ביותר שאפשר.

כדי להשתמש ב-Unix domain sockets, ‏ PGAdapter צריך לפעול באותו מארח כמו אפליקציית הלקוח.

const client = new Client({
  host: '/tmp',
  port: PORT,
  database: 'DATABASE_NAME',
});
await client.connect();
const res = await client.query("select 'Hello world!' as hello");
console.log(res.rows[0].hello);
await client.end();

מחליפים את מה שכתוב בשדות הבאים:

  • /tmp: ספריית ברירת המחדל של שקע הדומיין עבור PGAdapter. אפשר לשנות את זה באמצעות ארגומנט שורת הפקודה -dir.
  • PORT: מספר היציאה שבה PGAdapter פועל. אם PGAdapter פועל ביציאה מותאמת אישית, צריך לשנות את ההגדרה הזו במחרוזת החיבור. אחרת, משתמשים ביציאה שמוגדרת כברירת מחדל, 5432.

המאמרים הבאים