このページでは、PostgreSQL node-postgres ドライバを Spanner の PostgreSQL 言語データベースに接続する方法について説明します。node-postgres は、PostgreSQL 用の Node.js ドライバです。
PostgreSQL node-postgres ドライバを使用して接続しているアプリケーションと同じマシンで PGAdapter が実行されていることを確認します。
詳細については、PGAdapter を起動するをご覧ください。
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: PGAdapter が実行されているマシンのホスト名または IP アドレス。ローカルで実行している場合は、
localhost
を使用できます。 - PORT: PGAdapter が実行されているポート番号。PGAdapter がカスタムポートで実行されている場合は、接続文字列でこれを変更します。それ以外の場合は、デフォルト ポート
5432
を使用します。
- APPLICATION_HOST: PGAdapter が実行されているマシンのホスト名または IP アドレス。ローカルで実行している場合は、
Unix ドメイン ソケット
このセクションでは、Unix ドメイン ソケットを使用して PostgreSQL node-postgres ドライバを PostgreSQL 言語データベースに接続する方法について説明します。レイテンシを最小限に抑える必要がある場合は、Unix ドメイン ソケット接続を使用します。
Unix ドメイン ソケットを使用するには、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
を使用します。
次のステップ
- PGAdapter について詳細を確認する。
- PGAdapter GitHub リポジトリの node-postgres 接続オプションで、PostgreSQL node-postgres ドライバの接続オプションについて詳細を確認する。