PostgreSQL:複数のDB間でDB_LINKの使い方

最終更新日

web, domain, service

PostgreSQLにはDB_LINKと呼ばれる機能があり、別のデータベースにあるテーブルにアクセスすることができます。以下は、複数のデータベース間でDB_LINKを使用する例文です。

まず、サンプルとして2つのデータベースを用意します。1つは”db1″という名前で、もう1つは”db2″という名前であるとします。

CREATE DATABASE db1;
CREATE DATABASE db2;

次に、”db1″にある”employee”というテーブルにアクセスし、その内容を”db2″にある”employee_copy”というテーブルに挿入するためのDB_LINKを作成します。

-- db1で実行
CREATE EXTENSION dblink;
SELECT dblink_connect('dbname=db2');
INSERT INTO dblink('INSERT INTO employee_copy SELECT * FROM employee') AS t;

これにより、”db1″の”employee”テーブルにあるデータが”db2″の”employee_copy”テーブルにコピーされます。DB_LINKは、異なるデータベース間でデータを共有したい場合に役立ちます。ただし、セキュリティに注意して使用する必要があります。

シェアする

上にスクロール