高可用性の有効化または無効化

高可用性を有効にすると、スタンドアロンDBシステムが高可用性DBシステムに変換され、高可用性を無効にすると、高可用性DBシステムがスタンドアロンDBシステムに変換されます。

  • スタンドアロンDBシステムで高可用性を有効にすると、既存のMySQLインスタンスがプライマリ・インスタンスとして使用され、さらに2つのセカンダリ・インスタンスが作成され、プライマリ・インスタンスに存在するデータがセカンダリ・インスタンスにレプリケートされる、高可用性DBシステムが作成されます。停止時間は発生しません。
  • DBシステムで高可用性を無効にすると、優先プライマリ配置で実行されているインスタンスからスタンドアロンDBシステムが作成されます。
    • プライマリ・インスタンスが優先プライマリ配置で実行されている場合、停止時間は発生しません。
    • プライマリ・インスタンスが優先プライマリ配置で実行されていない場合、フェイルオーバーが発生し、これにより停止時間が短くなります。
      ノート

      高可用性を無効にする前に、DBシステムの優先プライマリ配置を現在のプライマリ・インスタンスに切り替えることで、停止時間を回避できます。スイッチオーバーを参照してください。
高可用性を有効または無効にするには、次のいずれかの方法を使用します。

コンソールの使用

コンソールを使用して、スタンドアロンDBシステムで高可用性を有効または無効にします。

このタスクでは次が必要です:
  • 実行中のスタンドアロンDBシステム。
  • 主キーはデータベース内のすべての表に存在します。前提条件を参照してください。
  • このタスクの実行中は、DBシステム上のアクティブなインバウンド・レプリケーション・チャネルをすべて停止する必要があります。チャネルの有効化または無効化を参照してください。アクティブなチャネルがDBシステムに接続されている間は、高可用性を有効にできません。これは、DBシステムで使用されている構成に高可用性との互換性がない場合にのみ必要です。DBシステムで互換性のある構成を使用している場合は、高可用性を有効にするためにインバウンド・レプリケーション・チャネルを停止する必要はありません。DBシステムの構成を変更するには、DBシステムの再起動が必要です。
  • クラッシュ・リカバリが有効になっています。クラッシュ・リカバリが無効になっている場合、DBシステムで高可用性を有効にできません。クラッシュ・リカバリを参照してください。
  • MySQLバージョンが8.0.24以上である必要があります。それ以前のバージョンのMySQLでは、高可用性を有効にできません。DBシステムで8.0.24より前のバージョンを使用している場合は、高可用性を有効にする前にアップグレードする必要があります。
  • このDBシステムでインバウンド・レプリケーション・チャネルを構成する場合は、高可用性を有効にする前にデータをインポートし、高可用性が有効化された後でチャネルを構成する必要があります。
ノート

DBシステムで高可用性を有効化する際にOutOfHostCapacity作業リクエスト・エラーが発生した場合は、OutOfHostCapacityエラーの解決を参照してください。
ノート

HeatWaveクラスタのロードまたはリロード操作が進行中の場合、高可用性の有効化または無効化が失敗する可能性があります。HeatWaveクラスタのロードまたはリロード操作の実行中は、高可用性を有効または無効にしないことをお薦めします。
  1. DBシステムで高可用性を有効にするには、次を実行します:
    1. 次のいずれかの場所から「高可用性の有効化」ダイアログ・ボックスを開きます:
      • DBシステム・リスト・ページの「アクション」メニューの「高可用性の有効化」メニュー項目。
      • DB Systemの詳細ページの「アクション」メニューにある「高可用性の有効化」メニュー項目。
      • 「DB Systemの詳細」ページの「高可用性」ラベルの隣にある「有効化」リンク。
    2. 「高可用性の有効化」ダイアログ・ボックスで:
      • 自動ストレージ拡張が有効でない場合は、「自動ストレージ拡張」を有効にして、「最大データ・ストレージ・サイズ(GB)」を入力します。
      • 「Enable」を選択します。
    3. (オプション) DBシステムで高可用性と互換性のある構成が使用されていない場合は、「構成」ドロップダウン・リストから構成を選択し、「有効化」を選択する必要があります。
    DBシステムがUPDATING状態になります。セカンダリ・インスタンスはプライマリ・インスタンスからクローニングされ、高可用性DBシステムが形成されます。このプロセスでは、DBシステムの停止時間は発生しません。更新プロセスが失敗すると、DBシステムはスタンドアロン状態に戻ります。失敗の詳細は、作業リクエストを確認してください。
  2. DBシステムで高可用性を無効にするには、次を実行します:
    1. 次のいずれかの場所から「高可用性の無効化」ダイアログ・ボックスを開きます:
      • DBシステム・リスト・ページの「アクション」メニューにある「高可用性の無効化」メニュー項目。
      • DB Systemの詳細ページの「他のアクション」ドロップダウン・メニューにある「高可用性の無効化」メニュー項目。
      • DB Systemの詳細ページの「高可用性」ラベルの隣にある「無効化」リンク。
    2. 「高可用性の無効化」ダイアログ・ボックスで、「無効化」を選択します。
    DBシステムがUPDATING状態になります。プライマリ・インスタンスが優先プライマリ配置に配置されていない場合は、制御されたフェイルオーバーが発生し、停止時間が短くなります。

    優先プライマリ配置にあるプライマリ・インスタンスはスタンドアロンDBシステムに変換され、2つのセカンダリ・インスタンスは削除されます。このプロセスでは、DBシステムの停止時間は発生しません。

関連トピック

CLIの使用

コマンドライン・インタフェースを使用して、DBシステムの高可用性を有効または無効にします。

このタスクでは次が必要です:
DBシステムで高可用性を有効または無効にするには、次を実行します:
  1. DBシステムで高可用性を有効にするには、次のコマンドを実行します:
    oci mysql db-system update --db-system-id <DBSystemOCID> 
             --is-highly-available true
    • db-system-id: DBシステムのOCIDを指定します。
    ノート

    DBシステムの構成に高可用性との互換性がない場合は、高可用性を有効にする前に、まず、高可用性互換の構成を使用するようにDBシステムを変更する必要があります。DB Systemの構成の更新を参照してください。
    DBシステムがUPDATING状態になります。セカンダリ・インスタンスはプライマリ・インスタンスからクローニングされ、高可用性DBシステムが形成されます。このプロセスでは、DBシステムの停止時間は発生しません。更新プロセスが失敗すると、DBシステムはスタンドアロン状態に戻ります。失敗の詳細は、作業リクエストを確認してください。
  2. DBシステムで高可用性を無効にするには、次のコマンドを実行します:
    oci mysql db-system update --db-system-id <DBSystemOCID> 
             --is-highly-available false
    • db-system-id: DBシステムのOCIDを指定します。
    DBシステムがUPDATING状態になります。プライマリ・インスタンスが優先プライマリ配置に配置されていない場合は、制御されたフェイルオーバーが発生し、停止時間が短くなります。

    優先プライマリ配置にあるプライマリ・インスタンスはスタンドアロンDBシステムに変換され、2つのセカンダリ・インスタンスは削除されます。このプロセスでは、DBシステムの停止時間は発生しません。