私はチャットアプリケーションで使用されるPostgres DBを持っています。チャットシステムは、大きくなるとこれらのテーブルを切り捨てることがありますが、このデータを別のPostgresデータベースにコピーする必要があります。私はこのDBのテーブルを切り捨てません。Postgres DB間でデータを複製する
チャットシステムのデータベースにいくつかのテーブルを設定して、別のPostgresデータベースにデータを複製する方法を教えてください。これを達成するための迅速な方法はありますか?
私はチャットアプリケーションで使用されるPostgres DBを持っています。チャットシステムは、大きくなるとこれらのテーブルを切り捨てることがありますが、このデータを別のPostgresデータベースにコピーする必要があります。私はこのDBのテーブルを切り捨てません。Postgres DB間でデータを複製する
チャットシステムのデータベースにいくつかのテーブルを設定して、別のPostgresデータベースにデータを複製する方法を教えてください。これを達成するための迅速な方法はありますか?
あなただけの一日おきの行のバッチをコピーする場合は、同じデータベース内の別のスキーマまたは同じデータベースクラスタ内の別のデータベースへの平野INSERT
としたほうが良いかもしれ(あなたがdblinkようなものが必要そのために)。
同じデータベース内の最も安全な/最速の解決策は、writeable CTE(PostgreSQL 9.1の新機能)です。これらの線に沿って何か:
WITH x AS (
DELETE FROM tbl
WHERE <some condition>
RETURNING *
)
INSERT INTO backup.tbl
SELECT *
FROM x;
リアル複製ニーズのためには、私は、レプリケーション、クラスタリングやプールについては、この優れたarticle at the Postgres Wikiを開始します。
テーブルを分割することを検討しましたか?そして、なぜそれを別のDBにコピーする必要がありますか?別のスキーマでは十分ではないでしょうか? –
おそらくdblinkとAFTER INSERT-triggerを使用できますか? – plundra