web-dev-qa-db-ja.com

PostgreSQL 9.2-9.6ダウンタイムなしのアップグレード

PostgreSQL 9.2から9.6にアップグレードする必要があります。以下は、私が直面している課題です。

  1. ストリーミングレプリケーションのセットアップがあり、ストリーミングレプリケーションモードではPostgreSQLが下位バージョンから上位バージョンへのアップグレードをサポートしていないため、マスターをアップグレードするとスレーブを再構築する必要があり、3時間かかります。その時間はありません。常に、1つのスレーブと1つのマスターを使用可能にする必要があります。ストリーミングレプリケーションを使用して、スレーブを再構築せずにアップグレードする他の方法はありますか?

  2. 論理複製を構築するために、slonyを使用することを考えましたが、slonyは自動的に複製しないという点でいくつかの制限があります。

    • ラージオブジェクト(BLOB)への変更
    • DDLコマンドによる変更
    • ユーザーと役割の変更
      ...そして私たちのアプリケーションは継続的な作成コマンドを持っています。したがって、slonyは使用できません。

スレーブの再構築を回避し、最小限のダウンタイムでアップグレードを行い、1つのマスターと1つのスレーブの準備を整えるための提案をしてください。

9
Prabhat

データベースをアップグレードすると、サーバーでダウンタイムが必要になります。ダウンタイムを最小限に抑えるには、新しいサーバーに新しいバージョンをインストールし、その上にレプリケーションセットアップを作成し、ここで古いインスタンスからすべてのデータをダンプし、アプリケーションが新しいサーバーをポイントしてデータベースに接続するようにサーバーポイントを変更することをお勧めします。

1
Lohit Gupta