Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ データベース管理 » 高可用性と読み込み専用のスケールアウトシステム » データベースミラーリング » トラブルシューティング:データベースミラーリングシステム

 

トラブルシューティング:プライマリサーバが起動できない

他のすべての試行が失敗したときに、ミラーサーバにプライマリサーバを強制的に引き継がせます。この方法では、ALTER DATABASE 文を FORCE START 句とともに使用しますが、コミットされたトランザクションを損失する可能性があります。

前提条件

-gd データベースサーバオプションで指定される権限 (デフォルトでは、Server Operator システム権限) が必要です。

ミラーサーバのユーティリティデータベースに接続できるように、パートナサーバが -su データベースオプションを使用して起動されている必要があります。

すでにプライマリサーバを手動で停止して再起動を試し、ALTER DATABASE 文を SET PARTNER FAILOVER 句とともに実行しています。

内容と備考

次の条件に当てはまる場合、ALTER DATABASE FORCE START 文だけを使用できます。

  • プライマリサーバがダウンしている (たとえば、ハードウェアの障害が原因で)。
  • ミラーサーバがプライマリサーバとしての引き継ぎに失敗した。
  • ミラーデータベースサーバのユーティリティデータベースに接続できる。
警告

FORCE START 句を使用する場合、ミラーサーバに存在しないトランザクションがプライマリサーバにあると、結果としてトランザクションが失われることがあります。

プライマリを再起動し、SET PARTNER FAILOVER 句を指定して ALTER DATABASE を実行することで、トランザクションを失うことなく失敗を強制することをおすすめします。FORCE START 句は、プライマリをどうしても再起動できない場合にのみ、最後の手段として使用してください。

 ♦ タスク
  1. ミラーデータベースを停止し、可能であればミラーサーバも停止します。

  2. プライマリサーバからデータベースおよびトランザクションログファイルを利用できる場合、それらをバックアップし、そのバックアップしたコピーを検証します。それ以外の場合は、トランザクションログをバックアップして検証します。

  3. プライマリサーバからのデータベースファイルおよびトランザクションログファイルが有効である場合、両方のファイルをミラーサーバにコピーします。

    プライマリサーバからのデータベースファイルは無効だが、プライマリトランザクションログファイルは有効である場合は、次の手順を実行します。

    1. プライマリログファイルをミラーデータベースのバックアップに適用し、データベースを検証します。

    2. データベースおよびトランザクションログファイルをミラーサーバにコピーします。

  4. ミラーサーバでミラーリングを有効にして、データベースを起動します (または、ミラーサーバを再起動します)。ミラーサーバを再起動する場合、ユーティリティデータベースに接続できるように、-su データベースオプションを指定します。

  5. ミラーサーバ上のユーティリティデータベースの utility_db に接続します。

  6. ALTER DATABASE FORCE START 文を実行し、ミラーサーバを強制的にプライマリサーバにします。

結果

そのミラーサーバが新しいプライマリサーバになります。

次の手順

障害の発生したプライマリマシンと別のプライマリマシンを置き換えるには、障害の発生したパートナを削除し、新しいパートナを新しいマシンに追加する必要があります。プライマリとミラーの接続文字列を更新する必要があります。パートナサーバの移動を参照してください。

次の文により、データベース mymirroreddb.db のミラーサーバが強制的にプライマリサーバになります。

ALTER DATABASE mymirroreddb FORCE START;

 参照