フェイルオーバー ソリューションには 2 つの Oracle サーバーがあります。SCN 番号を使用する PL/SQL プロシージャもあります。
この手順の実行中に、1 つのサーバーに障害が発生し、2 番目のサーバーに処理が切り替えられた場合、2 番目のサーバーの SCN 番号は同じになるということですか?
フェイルオーバー ソリューションが Oracle RAC
であり、技術的に単一のデータベースで複数の Oracle インスタンスを使用している場合:
SCN (システム変更番号) はデータベースの概念であり、Oracle インスタンスの概念ではないため、この手順の実行中に、 1 つのサーバーに障害が発生し、処理が 2 番目のサーバーに切り替えられると、SCN は事実と同じになります
が
、
データベースでは、常にトランザクションが実行されています。SMON および他の多くのバックグラウンド プロセスは常に作業を行っており、データベースは (読み取り専用で開かれていない限り) 常にトランザクションを実行しています。
そのため、インスタンスの切り替えプロセス中に変更されないように、SCN でリレーできないオラクルの内部アクションに対して SCN は常に変更されます。
これを見てみましょう: Tom Kyte による SCN