レプリケーショングループメンバーの復旧
このページでは、発生している特定の問題に基づいた復旧手順を提供します。
フェイルオーバー復旧の概要
Section titled “フェイルオーバー復旧の概要”プライマリ(書き込み)データベースが、電源障害やネットワーク障害などで予期せず停止した場合、Porta は自動的にバックアップデータベースにフェイルオーバーして処理を続行します。フェイルオーバープロセスの概要は次のとおりです。
プライマリの障害
Section titled “プライマリの障害”障害を検出すると、残りのデータベースが新しいプライマリデータベースを選出します。

バックアップへのフェイルオーバー
Section titled “バックアップへのフェイルオーバー”バックアップデータベースに PRIMARY の MEMBER_ROLE とデータを書き込む権限が与えられます。Porta はこの新しい接続を検出して確立し、処理は通常どおり続行されます。

障害が発生したマシンが復旧を開始する
Section titled “障害が発生したマシンが復旧を開始する”障害が発生したマシンが接続を回復すると、グループへの再参加を試み、障害中に取りこぼしたデータの復旧を開始します。この期間中、そのマシンの MEMBER_STATE は RECOVERING になります。

障害が発生したマシンが再び完全に稼働する
Section titled “障害が発生したマシンが再び完全に稼働する”障害が発生したマシンが完全に復旧すると、MEMBER_STATE は ONLINE になり、再び完全に稼働します。ただし、PRIMARY の MEMBER_ROLE は、バックアップマシンが障害、シャットダウン、その他の手段でグループを離脱するまで、バックアップマシンに残ります。

手動復旧手順
Section titled “手動復旧手順”障害やシャットダウンの後に手動での介入が必要になるケースがいくつかあります。以下に、一般的な問題とその復旧手順を示します。
すべて/ほとんどのデータベースが停止し、正しくオンラインにならない
Section titled “すべて/ほとんどのデータベースが停止し、正しくオンラインにならない”サイトの電源障害の場合のように、すべてのデータベースが停止して正しくオンラインにならない場合は、グループを手動でブートストラップする必要があります。参照: Bootstrap the Replication Group
単一のデータベースがグループへの再参加に失敗する
Section titled “単一のデータベースがグループへの再参加に失敗する”- グループ内のすべてのメンバーのステータスを確認します。
- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-databaseに移動します。 porta-databaseフォルダでview-ALL-group-repl-status.batをダブルクリックします。
- デスクトップの
- 他のマシンの
MEMBER_STATEがONLINEで、かつMEMBER_ROLEがPRIMARYのメンバーがある 場合は、グループへの再参加に失敗しているマシンで単に レプリケーションを再起動 してみることができます: Restart Replication - 他のマシンの
MEMBER_STATEがONLINEで、MEMBER_ROLEがPRIMARYのメンバーがない場合は、ONLINEでないマシンをブートストラップします: Bootstrap Replication- マシンのブートストラップ後:
- 別のマシンで Restart Replication を実行して、グループに参加することを確認します。
- 最後のマシンで Restart Replication を実行して、グループに参加することを確認します。
- マシンのブートストラップ後:
- 上記の手順のいずれかがうまくいかない場合は、グループへの再参加に失敗しているデータベースコンテナをリセットしてみることができます。
- Reset the Database
- !警告: リセットすると、マシン上のデータベースデータが消去されます!
各マシンがグループ内で自分自身しか登録しない
Section titled “各マシンがグループ内で自分自身しか登録しない”各マシンがレプリケーショングループ内で MEMBER_STATE が OFFLINE の自分自身しか認識しない場合、参加できる既存のグループがなかったことを意味する可能性が高いです。これは、マシン同士が通信できない場合や、どのマシンでもグループレプリケーションプロセスがブートストラップされなかった場合に発生することがあります。
これを修正するには、レプリケーショングループをブートストラップする必要があります: Bootstrap the Replication Group
マシンが UNREACHABLE と表示される
Section titled “マシンが UNREACHABLE と表示される”他のマシンが ONLINE と表示される場合は、UNREACHABLE と表示されているマシンでレプリケーションを再起動します: Restart Replication
再起動で問題が解決しない場合は、Bootstrap the Replication Group を行う必要があります。
参加メンバーが独自のグループを作成する
Section titled “参加メンバーが独自のグループを作成する”参加メンバーが独自のグループを作成する場合、その参加メンバーで group_replication_bootstrap_group 構成が OFF に設定されていなかった可能性が高いです。構成ファイルでこれをオフにし、マシンのレプリケーションを再起動する必要があります: Turn Off Default Bootstrap。
注: 独自のグループを作成したことにより、ブートストラップをオフにした後でも既存のグループに参加できなくなる可能性があります。この場合、Bootstrap the Replication Group が必要になることがあります。 ブートストラップ後にマシンがグループに参加できない場合は、Reset the Database が必要になることがあります。
その他のトラブルシューティングの詳細とエラーメッセージについては、Group Replication Troubleshooting ドキュメントを参照してください。
一般的なレプリケーション復旧アクション
Section titled “一般的なレプリケーション復旧アクション”レプリケーションの停止
Section titled “レプリケーションの停止”- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-database、次にactionsに移動します。 actionsフォルダでSTOP-repl.batをダブルクリックします。- 現在の Windows ユーザーを入力または確認します。
- デフォルトの WSL ユーザーを入力または確認します。
- 現在のマシンタイプを入力または確認します。
- 現在のマシンの IP アドレスを入力または確認します。
- プロセスが完了するまで実行させます。
レプリケーションの開始
Section titled “レプリケーションの開始”- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-database、次にactionsに移動します。 actionsフォルダでSTART-repl.batをダブルクリックします。- 現在の Windows ユーザーを入力または確認します。
- デフォルトの WSL ユーザーを入力または確認します。
- 現在のマシンタイプを入力または確認します。
- 現在のマシンの IP アドレスを入力または確認します。
- プロセスが完了するまで実行させます。
レプリケーションの再起動
Section titled “レプリケーションの再起動”- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-database、次にactionsに移動します。 actionsフォルダでrestart-repl.batをダブルクリックします。- 現在の Windows ユーザーを入力または確認します。
- デフォルトの WSL ユーザーを入力または確認します。
- 現在のマシンタイプを入力または確認します。
- 現在のマシンの IP アドレスを入力または確認します。
- プロセスが完了するまで実行させます。
レプリケーションのブートストラップ
Section titled “レプリケーションのブートストラップ”単一のメンバーをブートストラップする場合。
- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-database、次にactionsに移動します。 actionsフォルダでbootstrap.batをダブルクリックします。- 現在の Windows ユーザーを入力または確認します。
- デフォルトの WSL ユーザーを入力または確認します。
- 現在のマシンタイプを入力または確認します。
- 現在のマシンの IP アドレスを入力または確認します。
- プロセスが完了するまで実行させます。
- マイグレーションを求められたら、
nと入力します。 - シードを求められたら、
nと入力します。
レプリケーショングループのブートストラップ
Section titled “レプリケーショングループのブートストラップ”プライマリメンバーが存在しない場合などに、すべてのマシンでレプリケーショングループをブートストラップする場合。
- メイン マシンで Stop Replication を実行します。
- バックアップ マシンで Stop Replication を実行します。
- arbiter マシンで Stop Replication を実行します。
- メイン マシンで Bootstrap Replication を実行します。
- バックアップ マシンで Start Replication を実行します。
- arbiter マシンで Start Replication を実行します。
すべてのメンバーが正しく実行され、ONLINE になっているはずです。
データベースのリセット
Section titled “データベースのリセット”- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-database、次にactionsに移動します。 actionsフォルダでcreate-backup.batをダブルクリックして、データベースのバックアップを作成します。actionsフォルダでcautionフォルダに移動します。cautionフォルダでreset.batをダブルクリックします。- 現在の Windows ユーザーを入力または確認します。
- デフォルトの WSL ユーザーを入力または確認します。
- 現在のマシンタイプを入力または確認します。
- 現在のマシンの IP アドレスを入力または確認します。
- 追加のマシン情報を入力または確認します。
- プロセスが完了するまで実行させます。
デフォルトのブートストラップをオフにする
Section titled “デフォルトのブートストラップをオフにする”- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-database、次にactions、次にcautionに移動します。 cautionフォルダでset-bootstrap-OFF.batをダブルクリックします。- 現在の Windows ユーザーを入力または確認します。
- デフォルトの WSL ユーザーを入力または確認します。
- 現在のマシンタイプを入力または確認します。
- 現在のマシンの IP アドレスを入力または確認します。
- プロセスが完了するまで実行させます。
actionsフォルダまで戻り、Restart Replication を実行して既存のグループに再参加します。
デフォルトのブートストラップをオンにする
Section titled “デフォルトのブートストラップをオンにする”- デスクトップの
porta-onprem-bundleフォルダ、次にporta-helpers、次にporta-database、次にactions、次にcautionに移動します。 cautionフォルダでset-bootstrap-ON.batをダブルクリックします。- 現在の Windows ユーザーを入力または確認します。
- デフォルトの WSL ユーザーを入力または確認します。
- 現在のマシンタイプを入力または確認します。
- 現在のマシンの IP アドレスを入力または確認します。
- プロセスが完了するまで実行させます。
actionsフォルダまで戻り、Restart Replication を実行します。