2

巨大なデータベースをダンプ中ですが、pg_dump に時間がかかります。データベースを新しいサーバーに転送する必要があります。私はオンラインでたくさん検索しましたが、誰もがデータベースをダンプし、ファイルを転送して新しいサーバーに復元する同じ方法を提案しています。これを速くする別の方法はありますか?

v 8.4.20 のデータを v 9.3.5 に転送する必要があります。フォルダ /var/lib/pgsql/data/base を転送できますか??

私もこれを見ました: Copying PostgreSQL database to another server

この方法は、通常の方法よりも高速ですか?

私のデータベースには 756,000 個のテーブルがあり、サイズは 200 GB です。

4

2 に答える 2

2

ドキュメントによると、ファイルシステムのバックアップを行うことが可能です。バージョンを変更しても、ファイルがpg_dumpの出力よりもはるかに小さいとは思わないでしょう。あなたがリンクした答えは、ファイルに書き込むことなく pg_dump を使用することですが、ターゲットサーバーに直接ストリーミングします。それがオプションであるかどうかは、ネットワークによって異なります。また、ファイルを新しいサーバーにコピーし、両方のバージョンを並行して実行し、ターゲット マシン上の新しいバージョンに直接ダンプすることもできます。どのオプションが最適かは、ハードウェア、ネットワーク接続などに大きく依存します...

于 2014-09-20T19:22:42.817 に答える
2

主な問題は、新しいサーバーへの移行です。200 GB を移動するには、しばらく時間がかかります。ディスクにダンプしてから、ディスクを新しいサーバーに運ぶか送信する方が速い場合があります。これにより、ネットワーク経由で 200 GB のデータを送信することを回避できます。

おそらく、古いサーバーに 9.3 をインストールしてからpg_upgradeを使用できます。複数のバージョンの PostgreSQL を実行することは一般的です。それぞれに異なるポート番号を付けます。古いサーバーと新しいサーバーの両方で実行されている同じバージョンの PostgreSQL を取得すると、バックアップと復元の代替方法の1 つが可能になります。

于 2014-09-20T20:50:37.270 に答える