79 DBMS_DG
DBMS_DGパッケージには、Oracle Data Guard Broker構成をプログラムで管理するためのツールが用意されています。
構成の作成、変更および削除、フェイルオーバーとスイッチオーバーの処理、プロパティの設定およびヘルスのモニタリングを行うためのプロシージャを使用すると、スクリプトおよびカスタム・ツールを使用してData Guardのルーチン・タスクを自動化できます。
また、アプリケーションでフェイルオーバーの原因となる状況が発生した場合にファスト・スタート・フェイルオーバーが開始されるように、アプリケーションからOracle Data Guard Broker環境内のプライマリ・データベースまたはファスト・スタート・フェイルオーバー・ターゲット・データベースに通知できる機能もあります。
この章のトピックは、次のとおりです:
-
DBMS_DGサブプログラムの要約
ノート:
マルチテナント・コンテナ・データベースが、Oracle Database 21c以降のリリースで唯一サポートされているアーキテクチャです。ドキュメントが改訂されている間は、従来の用語が残っている可能性があります。ほとんどの場合、"データベース"と"非CDB"は、文脈に応じてCDBまたはPDBを指しています。アップグレードなどでは、"非CDB"が以前のリリースの非CDBを指している場合もあります。
ノート:
マルチテナント・コンテナ・データベース(CDB)で操作している場合は、DBMS_DG内のファンクションはルート・レベルでのみ実行されます。個々のプラガブル・データベース(PDB)レベルではなく、ルート・レベルで接続していることを確認してください。
79.2 Oracle Data GuardのDBMS_DG APIの概要
Oracle Data GuardのDBMS_DG APIを使用すると、ブローカ構成を管理できます。
表79-1 DBMS_DG APIの概要
| API | 効果 |
|---|---|
| ADD_DATABASE | Data Guard Broker構成にスタンバイ・データベースを追加します。 |
| ADD_FAR_SYNC |
Data Guard Broker構成に遠隔同期インスタンスを追加します。 |
|
Data Guard Broker構成にZero Data Loss Recovery Applianceを追加します。 |
|
|
スナップショット・スタンバイ・データベースをフィジカル・スタンバイ・データベースに変換するために使用します。 |
|
|
スナップショット・スタンバイ・データベースをフィジカル・スタンバイ・データベースに変換します。 |
|
|
Data Guard Broker構成を作成するために使用します。 |
|
|
構成メンバーを無効にするために使用します。 |
|
|
この関数は、構成のブローカ管理を無効にするために使用します。 |
|
|
ファスト・スタート・フェイルオーバーを無効にするために使用します。 |
|
|
ファスト・スタート・フェイルオーバーを実行する条件を削除するために使用します。 |
|
|
この関数は、指定したメンバーのブローカ管理を有効にするために使用します。 |
|
|
構成のブローカ管理を有効にします。 |
|
|
ファスト・スタート・フェイルオーバーを有効にするために使用します。 |
|
| ENABLE_FS_FAILOVER_CONDITION | ファスト・スタート・フェイルオーバーを実行する条件を追加指定するために使用できます。 |
|
この関数を使用すると、データベース・フェイルオーバーを実行できます。 |
|
|
構成プロパティの値を取得するために使用します。 |
|
|
構成タグの値を取得します。 |
|
|
メンバー・タグの値を取得します。 |
|
|
メンバー・プロパティの値を取得するために使用します。 |
|
|
すべての構成メンバーの健全性をブローカで評価するために使用します。 |
|
|
状況文字列を指定するために使用します。この文字列と一致する状況がアプリケーションで発生した場合、アプリケーションでファスト・スタート・フェイルオーバーの起動をリクエストできます。 |
|
|
フェイルオーバー操作の後にデータベースを回復するために使用できます。 |
|
|
Data Guard Broker構成のメンバーを削除するために使用します。 |
|
|
Data Guard Broker構成を削除するために使用します。 |
|
|
構成タグを削除します。 |
|
|
すべての構成タグを削除します。 |
|
|
メンバー・タグを削除します。 |
|
|
すべてのメンバー・タグを削除します。 |
|
|
Data Guard Broker構成のメンバーからインスタンスを削除するために使用できます。 |
|
|
構成プロパティをそのデフォルト値にリセットするために使用します。 |
|
|
メンバーの構成可能プロパティをそのデフォルト値にリセットするために使用できます。 |
|
|
構成プロパティの値を設定するために使用できます。 |
|
|
構成タグの値を設定します。 |
|
|
メンバー・タグの値を設定します。キーが存在しない場合は、新しいキーが作成されます。 |
|
|
メンバーの構成可能プロパティの値を設定するために使用できます。 |
|
|
構成保護モードを設定するために使用できます。 |
|
|
ロジカルまたはフィジカル・スタンバイ・データベースの適用状態をオフに設定するために使用します。 |
|
|
ロジカルまたはフィジカル・スタンバイ・データベースの適用状態をオンに設定するために使用します。 |
|
|
プライマリ・データベースのREDO転送の状態をオフに設定するために使用します。 |
|
| SET_STATE_TRANSPORT_ON |
プライマリ・データベースのREDO転送の状態をオンに設定するために使用できます。 |
| STOP_OBSERVER | Data Guard Broker構成でファスト・スタート・フェイルオーバーのオブザーバを停止するために使用します。 |
| SWITCHOVER | データベース・スイッチオーバーを実行するために使用します。 |
| WAIT | 様々なData Guard Brokerイベントの発生を待機するために使用します。 |
79.2.1 ADD_DATABASE
ADD_DATABASE関数を使用すると、Data Guard Broker構成にスタンバイ・データベースを追加できます。
ADD_DATABASEファンクション
形式
DBMS_DG.ADD_DATABASE (
database_name IN VARCHAR2,
database_ci IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
database_name |
ブローカでこのスタンバイ・データベースを参照するために使用される名前。この名前は、対応するデータベースの |
database_ci |
完全指定の接続記述子またはOracle Net Servicesのネーミング・メソッド(TNSなど)により解決される名前です。指定した値は、データベース・プロパティ |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
-
この関数は、プライマリ・データベース、または有効化されているスタンバイ・データベースか遠隔同期インスタンスに接続している間のみコールできます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: 正常に完了しました。 |
スタンバイ・データベースはData Guard Broker構成に正常に追加されました。 |
Other |
Data Guard Brokerで構成にスタンバイ・データベースを追加できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.2 ADD_FAR_SYNC
ADD_FAR_SYNC関数を使用すると、Data Guard Broker構成に遠隔同期インスタンスを追加できます。このコマンドを使用するには、Oracleウォレット・ベースの認証を構成し、SYSDBA権限で接続する必要があります。
ADD_FAR_SYNC関数
形式
DBMS_DG.ADD_FAR_SYNC (
far_sync_name IN VARCHAR2,
far_sync_ci IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
far_sync_name |
ブローカでこの遠隔同期インスタンスを参照するために使用する名前。この名前は、対応するデータベースの |
far_sync_ci |
完全指定の接続記述子またはOracle Net Servicesのネーミング・メソッド(TNSなど)により解決される名前です。指定した値は、データベース・プロパティ |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
-
この関数は、プライマリ・データベース、または有効化されているスタンバイ・データベースか遠隔同期インスタンスに接続している間のみコールできます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
遠隔同期インスタンスはData Guard Broker構成に正常に追加されました。 |
Other |
Data Guard Brokerで構成に遠隔同期インスタンスを追加できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.3 ADD_RECOVERY_APPLIANCE
ADD_FAR_SYNC関数を使用すると、Data Guard Broker構成にZero Data Loss Recovery Applianceを追加できます。
ADD_RECOVERY_APPLIANCE関数
形式
DBMS_DG.ADD_RECOVERY_APPLIANCE (
ra_name IN VARCHAR2,
ra_ci IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
ra_name |
ブローカで、このZero Data Loss Recovery Applianceを参照するために使用される名前。この名前は、対応するデータベースの |
ra_ci |
完全指定の接続記述子またはOracle Net Servicesのネーミング・メソッド(TNSなど)により解決される名前です。指定した値は、 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
-
この関数は、プライマリ・データベース、または有効化されているスタンバイ・データベースか遠隔同期インスタンスに接続している間のみコールできます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
Zero Data Loss Recovery ApplianceはData Guard Broker構成に正常に追加されました。 |
Other |
Data Guard Brokerで構成にZero Data Loss Recovery Applianceを追加できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.4 CONVERT_TO_PHYSICAL
CONVERT_TO_PHYSICAL関数を使用すると、スナップショット・スタンバイ・データベースをフィジカル・スタンバイ・データベースに変換できます。
CONVERT_TO_PHYSICAL関数
形式
DBMS_DG.CONVERT_TO_PHYSICAL (
db_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
db_name |
フィジカル・スタンバイ・データベースに変換するスナップショット・スタンバイ・データベースの |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
-
この関数をコールするには、クライアントがプライマリ・データベースに接続されている必要があります。
- スナップショット・スタンバイ・データベースは、フィジカル・スタンバイへの変換を完了するにはマウント・モードで実行されている必要があります。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
スナップショット・スタンバイ・データベースは正常にフィジカル・スタンバイ・データベースに変換されました。 |
ORA-16540: invalid argument |
このデータベースについて指定された名前が、有効なDB_UNIQUE_NAME値ではありませんでした。
|
ORA-16732: Oracle Clusterware is restarting the database instance |
Oracle Clusterwareで、スナップショット・スタンバイ・データベースをフィジカル・スタンバイ・データベースに変換するためにブローカで必要とされているモードになるよう、このデータベースを再起動中です。このデータベースの再起動が完了するまで待ってから、この関数のコールを再試行してください。 |
ORA-16897: start database to mount mode |
スナップショット・スタンバイ・データベースがマウント・モードで実行されていないため、フィジカル・スタンバイへの変換を実行できませんでした。このデータベースを再起動してマウント・モードにし、この関数のコールを再試行してください。 |
ORA-16899: Operation requires a connection to the primary database. |
この関数は、完了するには、プライマリ・データベースに接続している間にコールする必要があります。プライマリ・データベースに再接続し、この関数のコールを再試行してください。 |
Other |
Data Guard Brokerでこのデータベースを変換できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.5 CONVERT_TO_SNAPSHOT
CONVERT_TO_SNAPSHOT関数を使用すると、スナップショット・スタンバイ・データベースをフィジカル・スタンバイ・データベースに変換できます。
CONVERT_TO_SNAPSHOT関数
形式
DBMS_DG.CONVERT_TO_SNAPSHOT (
db_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
db_name |
スナップショット・スタンバイ・データベースに変換するフィジカル・スタンバイ・データベースの |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
このデータベースは正常にスナップショット・スタンバイ・データベースに変換されました。 |
ORA-16540: invalid argument |
このデータベースについて指定された名前が、有効なDB_UNIQUE_NAME値ではありませんでした。
|
Other |
Data Guard Brokerでこのデータベースを変換できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.6 CREATE_CONFIGURATION
CREATE_CONFIGURATION関数を使用すると、Data Guard Broker構成を作成できます。プライマリ・データベースは自動的に構成に追加されます。プライマリ・データベースのDB_UNIQUE_NAME初期化パラメータの値は、データベースからフェッチされます。
CREATE_CONFIGURATIONファンクション
DBMS_DG.CREATE_CONFIGURATION (
config_name IN VARCHAR2,
primary_ci IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
作成する構成のわかりやすい名前。有効な名前には英数字が含まれます。名前に空白を含める場合は、その名前を二重引用符または一重引用符で囲む必要があります。名前は30バイト以内で指定してください。 |
primary_ci |
完全指定の接続記述子またはOracle Net Servicesのネーミング・メソッド(TNSなど)により解決される名前です。指定した値は、データベース・プロパティDGConnectIdentifierの初期値としても使用されます。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- この関数は、プライマリ・データベースに接続している間のみコールできます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
Data Guard Broker構成が作成され、プライマリ・データベースが構成に追加されました。 |
Other |
Data Guard Brokerでこのデータベースを変換できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.7 DISABLE
DISABLE関数を使用すると、スナップショット・スタンバイ・データベースをフィジカル・スタンバイ・データベースに変換できます。
DISABLEファンクション
DBMS_DG.DISABLE (
member_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
無効にするメンバーの |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- この関数は、プライマリ・データベースに接続している間のみコールできます。
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
このメンバーは正常に無効化されました。 |
ORA-16540: invalid argument |
このメンバーについて指定された名前が、有効なDB_UNIQUE_NAME値ではありませんでした。
|
Other |
Data Guard Brokerでこのメンバーを無効にできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.8 DISABLE_CONFIGURATION
DISABLE_CONFIGURATION関数を使用すると、構成とそのデータベースすべてがブローカによって管理されなくなるように、構成のブローカ管理を無効にできます。
DISABLEファンクション
DBMS_DG.DISABLE_CONFIGURATION (
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- この関数は、プライマリ・データベースに接続している間のみコールできます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
このメンバーは正常に無効化されました。 |
Other |
Data Guard Brokerでこのメンバーを無効にできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.9 DISABLE_FS_FAILOVER
DISABLE_FS_FAILOVER関数を使用すると、ファスト・スタート・フェイルオーバーを無効にできます。この関数を使用すると、オブザーバでターゲット・スタンバイへのフェイルオーバーが開始されなくなります。
DISABLE_FS_FAILOVER関数
DBMS_DG.DISABLE_FS_FAILOVER (
force IN BOOLEAN DEFAULT FALSE,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
force |
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- プライマリ・データベースとターゲット・スタンバイ・データベースにネットワーク接続がある場合に、ブローカ構成内のすべてのデータベースでファスト・スタート・フェイルオーバーを無効にするには、forceパラメータに
FALSEを指定します。無効化操作中にエラーが発生した場合、ブローカによりエラー・メッセージが戻され、無効化操作が停止されます。エラー状態を無視し接続先データベースでファスト・スタート・フェイルオーバーを無効にするには、forceパラメータにTRUE値を指定してこのコールを再発行する必要があります。 - プライマリ・データベースとターゲット・スタンバイ・データベースの間のネットワークが切断されているか、この関数のコール元のデータベースにプライマリ・データベースとの接続がない場合は、forceパラメータに
TRUE値を指定します。forceパラメータにTRUE値を指定した場合は、エラー発生時でも、接続先データベースでファスト・スタート・フェイルオーバーが無効になります。 - オブザーバおよびターゲット・スタンバイ・データベースから切断されているプライマリ・データベースで、forceパラメータに
TRUE値を指定してこの関数をコールした場合は、オブザーバでターゲット・スタンバイ・データベースへのファスト・スタート・フェイルオーバーは開始されません。 - ブローカ構成内のいずれかのデータベースに接続されている間は、そのデータベースとプライマリとが接続されていれば、forceパラメータに
FALSE値を指定してこの関数をコールできます。 - ターゲット・スタンバイ・データベースでforceパラメータに
TRUE値を指定してこの関数をコールし、その後、プライマリ・データベースとの接続が再開された場合、ファスト・スタート・フェイルオーバーは、構成内のすべてのデータベースで無効になります。 - プライマリに接続されている間にforceパラメータに
TRUE値を指定してこの関数をコールした場合は、両方のデータベースの間にネットワーク接続があれば、ターゲット・スタンバイ・データベースでファスト・スタート・フェイルオーバーが無効になります。
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
forceパラメータで指定された値に従って、ファスト・スタート・フェイルオーバーが無効になりました。 |
Other |
Data Guard Brokerで、ファスト・スタート・フェイルオーバーを無効にできませんでした。 |
79.2.10 DISABLE_FS_FAILOVER_CONDITION
DISABLE_FS_FAILOVER_CONDITION関数を使用すると、ファスト・スタート・フェイルオーバーを実行する条件を削除できます。
DISABLE_FS_FAILOVER_CONDITION関数
DBMS_DG.DISABLE_FS_FAILOVER_CONDITION (
condition IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
condition |
無効にするファスト・スタート・フェイルオーバー条件。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| ヘルスの状態 | 説明 |
|---|---|
| "データファイル書込みエラー" |
ファスト・スタート・フェイルオーバーが有効化され、データファイル書込みエラー条件が指定されている場合、任意のデータ・ファイル(一時ファイル、システム・データ・ファイル、UNDOファイルなど)で書込みエラーが発生すると、ファスト・スタート・フェイルオーバーが開始されます。 |
| "破損した制御ファイル" |
制御ファイルが破損しています。この条件はデフォルトで有効になっています。 |
| "破損したディクショナリ" | 重要なデータベース・オブジェクトのディクショナリが破損しました。この条件はデフォルトで有効になっています。 |
| "アクセス不可能なログ・ファイル" | I/Oエラーにより、LGWRがログ・グループのどのメンバーにも書き込むことができません。 |
| "スタック・アーカイバ" | デバイスに空き容量がないかデバイスを使用できないためにアーカイバがREDOログをアーカイブできません。 |
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
ファスト・スタート・フェイルオーバー条件が無効になりました。 |
Other |
Data Guard Brokerで、ファスト・スタート・フェイルオーバー条件を無効にできませんでした。 |
79.2.11 ENABLE
ENABLE関数を使用すると、指定したメンバーのブローカ管理を有効にできます。
ENABLEファンクション
DBMS_DG.ENABLE (
member_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
有効にするメンバーの |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
このメンバーは正常に無効化されました。 |
ORA-16540: invalid argument |
このメンバーについて指定された名前が、有効なDB_UNIQUE_NAME値ではありませんでした。
|
Other |
Data Guard Brokerでこのメンバーを有効にできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.12 ENABLE_CONFIGURATION
ENABLE_CONFIGURATION関数を使用すると、構成のブローカ管理を有効にできます。
ENABLE_CONFIGURATIONファンクション
DBMS_DG.ENABLE_CONFIGURATION (
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- 構成が無効になっている場合は、制御ファイルのロールが
PRIMARYであるデータベースに接続し、この関数をコールしてその構成を有効にします。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
この構成は正常に有効化されました。 |
Other |
Data Guard Brokerでこの構成を有効にできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.13 ENABLE_FS_FAILOVER
ENABLE_FS_FAILOVER関数を使用すると、ファスト・スタート・フェイルオーバーを有効にできます。これにより、プライマリ・データベースが失われた場合に、手動で操作する必要なく、ブローカによって、具体的に選択されているスタンバイ・データベースにフェイルオーバーできるようになります。
ENABLE_FS_FAILOVER関数
DBMS_DG.ENABLE_FS_FAILOVER (
observe_only IN BOOLEAN DEFAULT FALSE,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
observe_only |
ファスト・スタート・フェイルオーバーを監視専用モードで有効にするかどうかを示すブール値。値をTRUEにした場合、この関数では、ファスト・スタート・フェイルオーバーが監視専用モードで有効になります。値をFALSEにした場合、この関数では、ファスト・スタート・フェイルオーバーが監視専用モードでなく有効になります。監視専用モードでは、オブザーバによって、ターゲット・スタンバイ・データベースへのフェイルオーバーが実際に実行されることはなく、実行された場合の高速フェイルオーバーの開始時期について情報が出力されます。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- このコマンドを発行してファスト・スタート・フェイルオーバーを有効化する前に、「ファスト・スタート・フェイルオーバーを有効化するための前提条件」で説明する前提条件を満たす必要があります。
ENABLE FAST_START FAILOVERコマンドの発行により、フェイルオーバーが起動されることはありません。構成を監視しているオブザーバが、フェイルオーバーの条件が満たされた場合に、ファスト・スタート・フェイルオーバーを開始できるようにするだけです。- ブローカ構成のデータベースに接続されている間は、ファスト・スタート・フェイルオーバーを有効化できます。
- ファスト・スタート・フェイルオーバーを有効化した後にオブザーバを開始しない場合、プライマリ・データベースとターゲットのスタンバイ・データベースに
ORA-16819の警告が表示されます。 - 複数のスタンバイ・データベースを含むブローカ構成でファスト・スタート・フェイルオーバーを有効化する場合は、プライマリ・データベース上のFastStartFailoverTarget構成プロパティで1つ以上の実行可能なターゲット・スタンバイ・データベースを指定する必要があります。プライマリ・データベースおよびターゲット・スタンバイ・データベースの両方が次の条件を満たしている必要があります。
- スタンバイREDOログが構成されていること
- REDO転送が、両方のデータベース上で、構成された保護モードに正しく構成されていること
ノート:
また、プライマリ・データベースとスタンバイ・データベースの両方でフラッシュバック・データベースを有効化し、フェイルオーバー後に元のプライマリ・データベースの回復を許可することをお薦めします。
- ファスト・スタート・フェイルオーバーを有効化した後は、「ファスト・スタート・フェイルオーバーが有効化されている場合の制限事項」の説明にある制約に従う必要があります。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
forceパラメータで指定された値に従って、ファスト・スタート・フェイルオーバーが無効になりました。 |
Other |
返された重大度が |
79.2.14 ENABLE_FS_FAILOVER_CONDITION
ENABLE_FS_FAILOVER_CONDITION関数を使用すると、ファスト・スタート・フェイルオーバーを実行する条件を追加で指定できます。
ENABLE_FS_FAILOVER_CONDITION関数
DBMS_DG.ENABLE_FS_FAILOVER_CONDITION (
condition IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
condition |
有効にするファスト・スタート・フェイルオーバー条件。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- この関数を使用して、ORA-240エラーがあるときのファスト・スタート・フェイルオーバーの開始を有効にすることもできます。
| ヘルスの状態 | 説明 |
|---|---|
| "データファイル書込みエラー" |
ファスト・スタート・フェイルオーバーが有効化され、データファイル書込みエラー条件が指定されている場合、任意のデータ・ファイル(一時ファイル、システム・データ・ファイル、UNDOファイルなど)で書込みエラーが発生すると、ファスト・スタート・フェイルオーバーが開始されます。 |
| "破損した制御ファイル" |
制御ファイルが破損しています。この条件はデフォルトで有効になっています。 |
| "破損したディクショナリ" | 重要なデータベース・オブジェクトのディクショナリが破損しました。この条件はデフォルトで有効になっています。 |
| "アクセス不可能なログ・ファイル" | I/Oエラーにより、LGWRがログ・グループのどのメンバーにも書き込むことができません。 |
| "スタック・アーカイバ" | デバイスに空き容量がないかデバイスを使用できないためにアーカイバがREDOログをアーカイブできません。 |
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
ファスト・スタート・フェイルオーバー条件が有効になりました。 |
Other |
Data Guard Brokerでこのファスト・スタート・フェイルオーバー条件を有効にできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.15 FAILOVER
FAILOVER関数を使用すると、データベース・フェイルオーバーを実行できます。
FAILOVERファンクション
DBMS_DG.FAILOVER (
db_name IN VARCHAR2,
failover_type, IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
db_name |
フェイルオーバー先のスタンバイ・データベースのDB_UNIQUE_NAME初期化パラメータ値。
|
failover_type |
実行するフェイルオーバーのタイプ。指定可能なキーワードは次のとおりです:
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
ORA-752またはORA-600 [3020]エラーにより、フェイルオーバー・ターゲットでREDO Applyが停止されていないかぎり、常に完全フェイルオーバーを最初に実行するようにします。これらのエラーのいずれかが発生した場合は、先に進む前に、My Oracle Supportノート1265884.1 (https://support.oracle.com.)の「スタンバイ・リカバリ時のORA-752またはORA-600 [3020]の解決」のガイドラインに従います。即時フェイルオーバーは、完全フェイルオーバーが失敗するか、前述のエラーの場合にのみ実行してください。- 指定したスタンバイ・データベースは、プライマリ・データベースに障害が発生する前に有効化されている必要があります。ただし、有効化されているスタンバイ・データベースが停止している場合は、フェイルオーバー操作の候補とみなすことができます。この場合は、スタンバイ・データベースを再起動してから、このコールを再試行してください。
- この関数をコールする前に、新しいプライマリ・データベースとなるスタンバイ・データベースに接続していることを確認してください。必要な場合は、
CONNECTコマンドを発行してフェイルオーバーするスタンバイ・データベースに接続します。 - ブローカ構成が最大保護モードで動作している場合、手動フェイルオーバー操作を実行すると、保護モードが強制的に最大パフォーマンスに設定されます。REDO転送サービスの設定は影響を受けません。フェイルオーバー操作後に、構成に必要な保護モードをリストアする必要があります。
ノート:
ファスト・スタート・フェイルオーバーの場合は、ブローカにより、フェイルオーバー前に有効になっていた保護モードが維持されます。 - failover_typeキーワードの
IMMEDIATEを指定してこの関数をコールした場合は、受信した未適用のREDOが適用されることはありません。このオプションを指定すると、スタンバイ・データベースでスタンバイREDOログ・ファイルが構成されている場合でも、アプリケーション・データが消失する可能性があります。また、構成内の他のスタンバイ・データベースは、回復または再作成されるまで機能しません。詳細は、「ロール変更後の無効化されたデータベースの再有効化」を参照してください。ファスト・スタート・フェイルオーバーを有効にした後は、「ファスト・スタート・フェイルオーバーが有効化されている場合の制限事項」で示されている制約に従う必要があります。 - 手動フェイルオーバーを実行するか、ブローカをファスト・スタート・フェイルオーバーを実行するように設定できます。フェイルオーバーの条件が満たされた場合に、ブローカにより自動的にフェイルオーバーを起動させる方法については、
ENABLE FAST_START FAILOVERコマンドを参照してください。 - ファスト・スタート・フェイルオーバーが有効になっている場合は、完全手動フェイルオーバーを、ファスト・スタート・フェイルオーバーのターゲット・スタンバイ・データベースに対してのみ、そのスタンバイ・データベースがプライマリ・データベースと同期化されているかプライマリ・データベースのラグ制限内である場合にのみ、およびオブザーバーが開始されている場合にのみ実行できます。ファスト・スタート・フェイルオーバーが有効になっている場合に、即時手動フェイルオーバーは実行できません。障害が発生した元のプライマリ・データベースで、フェイルオーバーの前に「データベースをフラッシュバック」が有効になっていた場合は、ブローカの
REINSTATEコマンドを使用して、元のプライマリ・データベースを回復できます。フィジカル・スタンバイ・データベースに対してフェイルオーバーが実行された場合は、そのスタンバイ・データベースで「データベースをフラッシュバック」が有効化されていて、使用可能なフラッシュバック・ログ情報が不足なくある場合にのみ、そのフェイルオーバーにより無効化されたその他のフィジカル・スタンバイ・データベースも回復できます。 - 元のプライマリ・データベースは、回復または再作成後、スタンバイ・データベースとしてのみ構成に関係できます。注意: フェイルオーバーの前に、元のプライマリ・データベースに実行中のアクティブなインスタンスがまだ存在している場合は、元のプライマリ・データベースを停止する必要があります。
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
フェイルオーバーが正常に完了しました。 |
Other |
Data Guard Brokerでこのフェイルオーバー操作を完了できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.16 GET_CONFIGURATION_PROPERTY
GET_CONFIGURATION_PROPERTY関数を使用すると、構成プロパティの値を取得できます。
GET_CONFIGURATION_PROPERTY関数
DBMS_DG.GET_CONFIGURATION_PROPERTY (
property_name IN VARCHAR2,
value OUT VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
property_name |
値をフェッチする構成プロパティの名前。 |
value |
指定された構成プロパティの値は、この出力パラメータで返されます。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
プロパティの値が正常にフェッチされました。 |
Other |
Data Guard Brokerで構成プロパティ値をフェッチできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.17 GET_CONFIGURATION_TAG
GET_CONFIGURATION_TAGファンクションは、構成タグの値を取得します。
GET_CONFIGURATION_TAGファンクション
DBMS_DG.GET_CONFIGURATION_TAG (
config_name IN VARCHAR2,
tag_name IN VARCHAR2,
value OUT VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
tag_name |
タグの名前。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
value |
タグの値。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.18 GET_MEMBER_TAG
GET_MEMBER_TAGファンクションは、メンバー・タグの値を取得します。
GET_MEMBER_TAGファンクション
DBMS_DG.GET_MEMBER_TAG (
config_name IN VARCHAR2,
member_name IN VARCHAR2,
tag_name IN VARCHAR2,
value OUT VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
member_name |
メンバー構成ファイルの名前。 |
tag_name |
タグの名前。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
value |
タグの値。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.19 GET_PROPERTY
GET_PROPERTY関数を使用すると、メンバー・プロパティの値を取得できます。
GET_PROPERTYファンクション
DBMS_DG.GET_PROPERTY (
member_name IN VARCHAR2,
property_name IN VARCHAR2,
value OUT CLOB,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
プロパティ値をフェッチするメンバーのDB_UNIQUE_NAME初期化パラメータ値。
|
property_name |
値をフェッチする構成プロパティの名前。 |
value |
指定された構成プロパティの値は、この出力パラメータで返されます。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
プロパティの値が正常にフェッチされました。 |
Other |
Data Guard Brokerでプロパティ値をフェッチできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.20 HEALTH_CHECK
HEALTH_CHECK関数を使用すると、ブローカで、すべての構成メンバーについて健全性を評価できます。
HEALTH_CHECKファンクション
DBMS_DG.HEALTH_CHECK
RETURN BINARY_INTEGER;パラメータ
なし
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
健全性チェックが正常に開始されました。 |
Other |
Data Guard Brokerで健全性チェックを実行できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.21 INITIATE_FS_FAILOVERプロシージャ
このプロシージャは、状況文字列の指定に使用します。この文字列と一致する状況がアプリケーションで発生した場合、アプリケーションでファスト・スタート・フェイルオーバーの起動をリクエストできます。
構文
DBMS_DG.INITIATE_FS_FAILOVER (
condstr IN VARCHAR2)
RETURN BINARY_INTEGER;パラメータ
表79-2 INITIATE_FS_FAILOVERプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
condstr |
ファスト・スタート・フェイルオーバーをリクエストする必要がある条件文字列を指定します。条件文字列引数を指定しなかった場合は、デフォルトの文字列「アプリケーション・フェイルオーバーがリクエストされました。」がブローカ・ログ・ファイルおよびプロシージャのコール元のデータベースのデータベース・アラート・ログに記録されます。 |
使用上のノート
-
このプロシージャは、2進整数を戻します。
-
ファスト・スタート・フェイルオーバーが最後に実行された時間および原因を参照するには、
V$FS_FAILOVER_STATSビューを問い合せます。 -
このプロシージャは、プライマリ・データベースまたはファスト・スタート・フェイルオーバー・スタンバイ・データベースに接続している場合にのみコールできます。
Oracle Databaseの外部で実行されているアプリケーションによって検出可能な状況には、Oracle Data Guard Brokerがファスト・スタート・フェイルオーバーを実行する原因となる可能性があるものがあります。原因となる可能性がある状況の範囲はほぼ無制限であるため、ファスト・スタート・フェイルオーバーを実行する原因となっている状況の判別は、アプリケーションによって行われます。
このような状況が発生すると、アプリケーションによってDBMS_DG.INITIATE_FS_FAILOVERプロシージャがコールされ、アプリケーションでファスト・スタート・フェイルオーバーの即時実行が必要であることがプライマリ・データベースまたはファスト・スタート・フェイルオーバー・ターゲット・スタンバイ・データベースのいずれかにアラートとして通知されます。次に、プロシージャのコール元のデータベースからオブザーバに通知され、オブザーバは、スタンバイ・データベースがフェイルオーバーの受入れに有効なファスト・スタート・フェイルオーバー状態(「監視」および「同期」または「遅延内」のいずれか)であるかぎり、ファスト・スタート・フェイルオーバーを即時開始します。構成が有効なファスト・スタート・フェイルオーバー状態でない場合は、INITIATE_FS_FAILOVERサブプログラムによってORAエラー・メッセージが戻され(例外は通知されません)、ファスト・スタート・フェイルオーバーを実行できないことがコール元のアプリケーションに通知されます。
エラー
表79-3 INITIATE_FS_FAILOVERプロシージャのエラー
| エラー | 説明 |
|---|---|
|
|
ファスト・スタート・フェイルオーバーの開始リクエストがオブザーバに転送されました。 |
|
|
ブローカ構成が存在しないか、またはファスト・スタート・フェイルオーバーが使用可能になっていません。 |
|
|
|
|
|
構成が同期化されていない場合に、使用可能な最大のファスト・スタート・フェイルオーバー構成で |
|
|
|
|
|
|
|
|
構成がユーザー指定のREDO遅延制限内でない場合に、最大パフォーマンスのファスト・スタート・フェイルオーバー構成で |
例
この例では、ファスト・スタート・フェイルオーバーが無効のときに、プログラムがファスト・スタート・フェイルオーバーを開始しようとします。この例を使用するには、SYDDBA権限を持つSYSユーザーとして接続します。
set serveroutput on
declare
status integer;
begin
status := dbms_dg.initiate_fs_failover(''Failover Requested'');
dbms_output.put_line(''Fast-Start Failover is disabled: Expected status = ORA-16646'');
dbms_output.put_line('' Actual Status = ORA-'' || status);
end;
/
exit;79.2.22 REINSTATE
REINSTATE関数を使用すると、フェイルオーバー操作の後にデータベースを回復できます。
REINSTATEファンクション
DBMS_DG.REINSTATE (
db_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
db_name |
回復するデータベースのDB_UNIQUE_NAME初期化パラメータ値。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- 「ブローカ構成に含まれる元のプライマリ・データベースの回復」で説明する回復の条件が満たされていない場合、回復処理は失敗し、対応するエラー・ステータスが表示され、指定されたデータベースは無効なままになります。
- データベース名として元のプライマリの名前が指定されており、ファスト・スタート・フェイルオーバーが有効になっている場合は、元のプライマリ・データベースが新規プライマリ・データベースのスタンバイとして回復され、ファスト・スタート・フェイルオーバー環境が、新規スタンバイ・データベースの可用性を反映するように更新されます。新規スタンバイ・データベースは、新規プライマリ・データベースに障害が発生した場合、新規プライマリ・データベースからREDOデータを受け取り、ファスト・スタート・フェイルオーバーのターゲットとなります。FastStartFailoverAutoReinstate構成プロパティが
FALSEに設定されている場合を除き、オブザーバが実行中であれば自動的に回復が実行されます。 - この関数では、ファスト・スタート・フェイルオーバーが有効になっている必要はありません。このコマンドは、完全手動フェイルオーバーが実行された後、元のプライマリ・データベースを回復する場合に使用できます。完全または即時フェイルオーバー後に無効化されたその他のスタンバイ・データベースを回復するために使用することもできます。
- この関数は、ブローカ構成内の回復するデータベース以外のデータベースに接続されている間にコールします。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
このデータベースは正常に回復されました。 |
ORA-16540: invalid argument |
このデータベースについて指定された名前が、有効なDB_UNIQUE_NAME値ではありませんでした。
|
ORA-16732: Oracle Clusterware is restarting the database instance
|
Oracle Clusterwareで、ブローカに必要とされているモードになるよう、このデータベースを再起動中です。データベースが再起動された後に、この関数のコールを再試行してください。 |
ORA-16897: start database to mount mode |
このデータベースはマウント・モードで実行されていなかったため、回復が実行されませんでした。このデータベースを再起動してマウント・モードにし、この関数のコールを再試行してください。 |
ORA-16899: Operation requires a connection to the primary database.
|
この関数をコールするには、プライマリ・データベースへの接続が必要です。 |
Other |
Data Guard Brokerで、指定されたデータベースを回復できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.23 REMOVE
REMOVE関数を使用すると、Data Guard Broker構成のメンバーを削除できます。
REMOVEファンクション
DBMS_DG.REMOVE (
member_name IN VARCHAR2,
preserve_destination IN BOOLEAN DEFAULT FALSE,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
回復するデータベースのDB_UNIQUE_NAME初期化パラメータ値。
|
preserve_destination |
構成からメンバーを削除するときにlog_archive_dest初期化パラメータの設定を保持するかクリアするかを示すブール値。値をTRUEにした場合は、パラメータ設定をクリアしないように指定されます。値をFALSEにした場合は、パラメータ設定をクリアするように指定されます。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- ブローカ構成に含まれるプライマリ・データベースの名前を指定すると、エラーが戻されます。
- この関数では、デフォルトで、指定されたメンバーへの参照すべてが、構成のメンバーごとにREDO転送初期化パラメータすべてから削除されます。これらの設定を保持するには、
preserve_destinationパラメータにTRUEを指定します。 - この関数は、ファスト・スタート・フェイルオーバーが有効になっておりdatabase-nameでターゲット・スタンバイ・データベースの名前が指定されている場合はコールできません。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
このメンバーは正常に削除されました。 |
Other |
Data Guard Brokerで構成からこのメンバーを削除できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.24 REMOVE_CONFIGURATION
REMOVE_CONFIGURATION関数を使用すると、Data Guard Broker構成を削除できます。
REMOVE_CONFIGURATIONファンクション
DBMS_DG.REMOVE_CONFIGURATION (
preserve_destinations IN BOOLEAN DEFAULT FALSE,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
preserve_destination |
構成からメンバーを削除するときにlog_archive_dest初期化パラメータの設定を保持するかクリアするかを示すブール値。値をTRUEにした場合は、パラメータ設定をクリアしないように指定されます。値をFALSEにした場合は、パラメータ設定をクリアするように指定されます。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- ブローカ構成を削除すると、その構成に関連付けられているすべてのメンバーの管理が無効化されます。
- この関数では、デフォルトで、プライマリ・データベースの
LOG_ARCHIVE_DEST_n初期化パラメータ、および構成内のすべてのメンバーのLOG_ARCHIVE_CONFIG初期化パラメータの、該当するブローカ設定が削除されます。これらの設定を保持するには、preserve_destinationsパラメータにtrue値を指定します。 - このコマンドでは、基礎となるOracle Data Guard構成の実際のプライマリまたはスタンバイ・データベース・インスタンス、データベース、遠隔同期インスタンス、データ・ファイル、制御ファイル、初期化パラメータ・ファイル、サーバー・パラメータ・ファイルまたはログ・ファイルは削除されず、影響を受けません。
- ファスト・スタート・フェイルオーバーが有効化されている場合は、その構成を削除できません。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
この構成は正常に削除されました。 |
Other |
Data Guard Brokerでこの構成を削除できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.25 REMOVE_CONFIGURATION_TAG
REMOVE_CONFIGURATION_TAGファンクションは、構成タグを削除します。
REMOVE_CONFIGURATION_TAGファンクション
DBMS_DG.REMOVE_CONFIGURATION_TAG (
config_name IN VARCHAR2,
tag_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
tag_name |
タグの名前。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.26 REMOVE_CONFIGURATION_TAG_ALL
REMOVE_CONFIGURATION_TAG_ALLファンクションは、すべての構成タグを削除します。
REMOVE_CONFIGURATION_TAG_ALLファンクション
DBMS_DG.REMOVE_CONFIGURATION_TAG_ALL (
config_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.27 REMOVE_INSTANCE
REMOVE_INSTANCE関数を使用すると、Data Guard Broker構成のメンバーからインスタンスを削除できます。
REMOVE_INSTANCEファンクション
DBMS_DG.REMOVE_INSTANCE (
member_name IN VARCHAR2,
instance_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
インスタンスを削除するメンバーのDB_UNIQUE_NAME初期化パラメータ値。
|
instance_name |
ブローカ構成を削除するインスタンスの名前(SID)。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- 開始されたインスタンスは、ブローカにより自動的にブローカ構成に追加されます。ただし、インスタンスはデータベース・プロファイルから自動的に削除されません。この関数を使用すると、手動で、存在しなくなったインスタンスを構成から削除できます。
- ブローカ構成内の現在アクティブなインスタンスに対してこの関数を使用すると、エラーが返されます。
- 遠隔同期インスタンス用にデータベースに現在関連付けられている唯一のインスタンスに対してこの関数を使用すると、エラーが返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
この構成は正常に削除されました。 |
Other |
Data Guard Brokerでこの構成を削除できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.28 REMOVE_MEMBER_TAG
REMOVE_MEMBER_TAGファンクションは、メンバー・タグを削除します。
REMOVE_MEMBER_TAGファンクション
DBMS_DG.REMOVE_MEMBER_TAG(
config_name IN VARCHAR2,
member_name IN VARCHAR2,
tag_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
member_name |
メンバー構成ファイルの名前。 |
tag_name |
タグの名前。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.29 REMOVE_MEMBER_TAG_ALL
REMOVE_MEMBER_TAG_ALLファンクションは、すべてのメンバー・タグを削除します。
REMOVE_MEMBER_TAG_ALLファンクション
DBMS_DG.REMOVE_MEMBER_TAG_ALL(
config_name IN VARCHAR2,
member_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
member_name |
メンバー構成ファイルの名前。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.30 RESET_CONFIGURATION_PROPERTY
RESET_CONFIGURATION_PROPERTY関数を使用すると、構成プロパティをデフォルト値にリセットできます。
RESET_CONFIGURATION_PROPERTY関数
DBMS_DG.RESET_CONFIGURATION_PROPERTY (
property_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
property_name |
値をデフォルト値にリセットする構成プロパティの名前。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
この構成は正常に削除されました。 |
Other |
Data Guard Brokerでこの構成を削除できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.31 RESET_PROPERTY
RESET_PROPERTY関数を使用すると、メンバーの構成可能プロパティをデフォルト値にリセットできます。
RESET_PROPERTYファンクション
DBMS_DG.RESET_PROPERTY (
member_name IN VARCHAR2,
property_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
構成可能プロパティ値をデフォルト値にリセットするメンバーのDB_UNIQUE_NAME初期化パラメータ値。
|
property_name |
値をデフォルト値にリセットする構成プロパティの名前。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
指定された構成可能プロパティの値が、デフォルト値に正常にリセットされました。 |
Other |
Data Guard Brokerで、指定された構成可能プロパティをデフォルト値にリセットできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.32 SET_CONFIGURATION_PROPERTY
SET_CONFIGURATION_PROPERTY関数を使用すると、構成プロパティの値を設定できます。
SET_CONFIGURATION_PROPERTY関数
DBMS_DG.SET_CONFIGURATION_PROPERTY (
property_name IN VARCHAR2,
value IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
property_name |
値を設定する構成プロパティの名前。 |
value |
指定した構成プロパティに設定する値。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
指定された構成可能プロパティの値が、デフォルト値に正常にリセットされました。 |
Other |
Data Guard Brokerで、指定された構成可能プロパティをデフォルト値にリセットできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.33 SET_CONFIGURATION_TAG
SET_CONFIGURATION_TAGファンクションは、構成タグの値を設定します。タグが存在しない場合は、新しいタグが作成されます。
SET_CONFIGURATION_TAGファンクション
DBMS_DG.SET_CONFIGURATION_TAG (
config_name IN VARCHAR2,
tag_name IN VARCHAR2,
value IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
tag_name |
タグの名前。 |
value |
タグの値。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.34 SET_MEMBER_TAG
SET_MEMBER_TAGファンクションは、メンバー・タグの値を設定します。キーが存在しない場合は、新しいキーが作成されます。
SET_MEMBER_TAGファンクション
DBMS_DG.SET_MEMBER_TAG (
config_name IN VARCHAR2,
member_name IN VARCHAR2,
tag_name IN VARCHAR2,
value IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
config_name |
構成ファイルの名前。ローカル構成の場合はNULLです。 |
member_name |
メンバーの名前。 |
tag_name |
タグの名前。 |
value |
タグの値。 |
使用上のノート
-
このファンクションは、操作が成功したかどうかを示すOracleエラー番号である2進整数を戻します。
戻り値
| エラー | 説明 |
|---|---|
severity |
この関数によって返されたステータスに関連付けられている重大度。 |
79.2.35 SET_PROPERTY
SET_CONFIGURATION_PROPERTY関数を使用すると、メンバーの構成可能プロパティの値を設定できます。
SET_PROPERTYファンクション
DBMS_DG.SET_PROPERTY (
member_name IN VARCHAR2,
property_name IN VARCHAR2,
value IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
構成可能プロパティ値を設定するメンバーのDB_UNIQUE_NAME初期化パラメータ値。
|
property_name |
値を設定する構成可能プロパティの名前。 |
value |
指定した構成可能プロパティに設定する値。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
指定された構成可能プロパティの値が、デフォルト値に正常にリセットされました。 |
Other |
Data Guard Brokerで、指定された構成可能プロパティをデフォルト値にリセットできませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.36 SET_PROTECTION_MODE
SET_PROTECTION_MODE関数を使用すると、構成保護モードを設定できます。
SET_PROTECTION_MODE関数
DBMS_DG.SET_PROTECTION_MODE (
protection_mode IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
protection_mode |
設定する保護モードを示す文字列。有効な値は次のとおりです:
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- この関数を使用して保護モードを設定する前に、少なくとも1つのスタンバイが、プライマリから直接REDOを受け取る場合に
SYNCまたはFASTSYNCモードでREDOを受け取るように構成されていることを確認してください。スタンバイが遠隔同期インスタンスを介してREDOを受け取る場合、遠隔同期インスタンスはSYNCまたはFASTSYNCモードでREDOを受け取るように構成され、スタンバイはASYNCモードでREDOを受け取るように構成される必要があります。 - 次の表は、構成の保護モードと、REDO転送サービスの対応する最低限の設定を示しています。
保護モード REDO転送 スタンバイREDOログ・ファイルの要否 ファスト・スタート・フェイルオーバーとの併用 MAXPROTECTIONSYNCはい はい MAXAVAILABILITYSYNCまたはFASTSYNCはい はい MAXPERFORMANCEASYNCはい はい 構成のデフォルトの保護モードは
MAXPERFORMANCEです。 - この関数は、ファスト・スタート・フェイルオーバーが有効になっている場合はコールできません。
MAXPERFORMANCEからMAXPROTECTIONへのアップグレードは許可されません。まずMAXAVAILABILITYに変更してから、MAXPROTECTIONにする必要があります。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
構成保護モードが正常に変更されました。 |
Other |
Data Guard Brokerで保護モードを変更できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.37 SET_STATE_APPLY_OFF
SET_STATE_APPLY_OFF関数を使用すると、ロジカルまたはフィジカル・スタンバイ・データベースの適用状態をオフに設定できます。
SET_STATE_APPLY_OFF関数
DBMS_DG.SET_STATE_APPLY_OFF (
member_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
適用状態をOFFに設定する必要があるスタンバイ・データベースのDB_UNIQUE_NAME初期化パラメータ値。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- スナップショット・スタンバイ・データベースの適用状態を
OFFに設定することはできません。 - このデータベースの状態変更は、Oracle RACデータベースのすべてのインスタンスに影響します。
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
指定されたスタンバイ・データベースの適用状態が正常に |
Other |
Data Guard Brokerで、指定されたスタンバイ・データベースの適用状態をOFFに設定できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.38 SET_STATE_APPLY_ON
SET_STATE_APPLY_ON関数を使用すると、ロジカルまたはフィジカル・スタンバイ・データベースの適用状態をオンに設定できます。
SET_STATE_APPLY_ON関数
DBMS_DG.SET_STATE_APPLY_ON (
member_name IN VARCHAR2,
apply_instance IN VARCHAR2 DEFAULT NULL,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
適用状態をONに設定する必要があるスタンバイ・データベースのDB_UNIQUE_NAME初期化パラメータ値。
|
apply_instance |
これがOracle RACスタンバイ・データベースである場合の、適用インスタンスにする必要があるインスタンスのSIDを示す文字列。 |
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- スナップショット・スタンバイ・データベースの適用状態を
ONに設定することはできません。 apply_instance引数が指定されている場合は、そのインスタンスが適用インスタンスになります。- このデータベースの状態変更は、Oracle RACデータベースのすべてのインスタンスに影響します。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
指定されたスタンバイ・データベースの適用状態が正常に |
Other |
Data Guard Brokerで、指定されたスタンバイ・データベースの適用状態を |
79.2.39 SET_STATE_TRANSPORT_OFF
SET_STATE_TRANSPORT_OFF関数を使用すると、プライマリ・データベースのREDO転送状態をオフに設定できます。
SET_STATE_TRANSPORT_OFF関数
DBMS_DG.SET_STATE_TRANSPORT_OFF (
member_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
プライマリ・データベースのDB_UNIQUE_NAME初期化パラメータ値。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- 転送状態は、プライマリ・データベースの場合のみオフに設定できます。
- このデータベースの状態変更は、Oracle RACデータベースのすべてのインスタンスに影響します。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
プライマリ・データベースの転送状態が正常に |
Other |
Data Guard Brokerで転送状態を |
79.2.40 SET_STATE_TRANSPORT_ON
SET_STATE_TRANSPORT_ON関数を使用すると、プライマリ・データベースのREDO転送の状態をオンに設定できます。
SET_STATE_TRANSPORT_ON関数
DBMS_DG.SET_STATE_TRANSPORT_ON (
member_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
member_name |
プライマリ・データベースのDB_UNIQUE_NAME初期化パラメータ値。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- 転送状態は、プライマリ・データベースの場合のみオンに設定できます。
- このデータベースの状態変更は、Oracle RACデータベースのすべてのインスタンスに影響します。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
プライマリ・データベースの転送状態が正常に |
Other |
Data Guard Brokerで転送状態を |
79.2.41 STOP_OBSERVER
STOP_OBSERVER関数を使用すると、Data Guard Broker構成でファスト・スタート・フェイルオーバーのオブザーバを停止できます。
STOP_OBSERVERファンクション
DBMS_DG.STOP_OBSERVER (
ob_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
ob_name |
停止するオブザーバの名前を示す文字列。有効な値は、次のとおりです。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- この関数をコールできるのは、ブローカ構成内のいずれかのデータベースに接続されている間です。
- このコマンドではファスト・スタート・フェイルオーバーを無効化できませんが、ファスト・スタート・フェイルオーバーはオブザーバがないと開始できません。
- このコマンドの発行時に、ファスト・スタート・フェイルオーバーが有効化されている必要はありません。
- この関数のコール時にファスト・スタート・フェイルオーバーが有効になっている場合は、プライマリ・データベースとスタンバイ・データベースが接続されており相互に通信している必要があります。そうでない場合は、次のエラーが戻されます。
ORA-16636 fast-start failover target standby in error state, cannot stop observerプライマリ・データベースとスタンバイ・データベースの間に接続が存在しない場合は、プライマリ・データベースで
FORCEオプションを指定してファスト・スタート・フェイルオーバーの無効化を発行した後に、この関数をコールできます。オブザーバおよびターゲットのスタンバイ・データベースから切断されたプライマリ・データベース上でFORCEオプションを指定してファスト・スタート・フェイルオーバーを無効化しても、オブザーバによる、ターゲットのスタンバイ・データベースへのファスト・スタート・フェイルオーバーの開始を無効にはできません。 - この関数のコール時にファスト・スタート・フェイルオーバーが有効になっていない場合は、オブザーバを停止したときにプライマリ・データベースのみが実行されている必要があります。
- オブザーバは、この関数のコールの直後に停止されるわけではありません。オブザーバは、次回オブザーバーがブローカと接続されるまで停止されたことを検出しません。この関数のコールが正常に完了した後はすぐに、どのコンピュータででもオブザーバを再度起動できます。旧オブザーバがまだ自身の停止を検出していない場合でも、新規オブザーバを即座に開始できます。ブローカ構成では新しいオブザーバがすでに開始されているため、元のオブザーバの開始を試行すると失敗します。
- この関数では、新しいファスト・スタート・フェイルオーバー・ターゲットまたは新しいマスター・オブザーバへの切替えが進行中の場合は、エラーが返されます。
- この関数では、登録されているオブザーバが2つ以上ありそのマスターのみを停止しようとすると、エラーが返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
指定されたオブザーバは正常に停止されました。 |
Other |
Data Guard Brokerで、指定されたオブザーバを停止できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.42 SWITCHOVER
SWITCHOVER関数を使用すると、データベース・スイッチオーバーを実行できます。
SWITCHOVERファンクション
DBMS_DG.SWITCHOVER (
db_name IN VARCHAR2,
severity OUT BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
db_name |
スイッチオーバー先のスタンバイ・データベースのDB_UNIQUE_NAME初期化パラメータ値。
|
severity |
この関数によって返されたステータスに関連付けられている重大度。重大度は、次のOracleエラー番号のいずれかになります。
|
使用上のノート
-
この関数では、2進整数が返されます。
- ファスト・スタート・フェイルオーバーが有効な場合は、ファスト・スタート・フェイルオーバーのターゲット・スタンバイ・データベースへのスイッチオーバーのみ実行できます。
- スイッチオーバーの起動前に、ブローカによって、プライマリ・データベースおよびスタンバイ・データベースが次の状態であることが検証されます。
- REDO転送サービスが起動するように、プライマリ・データベースが有効化され、TRANSPORT-ON状態になっている必要があります。
- スタンバイ・データベースが有効化され、TRANSPORT-ON状態になっており、ログ適用サービスが起動している必要があります。
- ブローカは、スイッチオーバーに関係するように選択したスタンバイ・データベースにREDO転送サービスのエラーがないかぎり、スイッチオーバーを続行します。その他のスタンバイ・データベースにエラーが発生しても、スイッチオーバーの続行には影響しません。
- ロジカル・スタンバイ・データベースへのスイッチオーバーは、構成が最大保護モードで動作している場合には許可されません。
- ブローカ構成が最大保護モードまたは最大可用性モードで動作している場合、スイッチオーバーの操作後も同じ保護モードが維持されます(「スイッチオーバー操作実行前の考慮事項」を参照)。スイッチオーバーのターゲットとなるスタンバイ・データベースが保護モード要件を満たす唯一のスタンバイであったためにモードを維持できない場合、スイッチオーバーは許可されません。
- プライマリ・ロールを引き継ぐスタンバイ・データベースがフィジカル・スタンバイ・データベースの場合は、スイッチオーバーの完了後に、元のプライマリ・データベースが再起動されます。スタンバイ・データベースがロジカル・スタンバイ・データベースの場合は、プライマリ・データベースもロジカル・スタンバイ・データベースも再起動されません。
- プライマリ・ロールを引き継ぐスタンバイ・データベースがフィジカル・スタンバイ・データベースの場合、元のプライマリ・データベースはフィジカル・スタンバイ・データベースとなります。
- プライマリ・ロールを引き継ぐスタンバイ・データベースがロジカル・スタンバイ・データベースの場合、元のプライマリ・データベースはロジカル・スタンバイ・データベースとなります。
- Oracle RACプライマリ・データベースがフィジカル・スタンバイ・データベースになる場合、スイッチオーバーを実行する前に、プライマリ・データベース上のインスタンスのうち1つを残してそれ以外はすべては停止されます。詳細は、「スイッチオーバー」を参照してください。
- スナップショット・スタンバイ・データベースにスイッチオーバーすることはできません。
- プライマリ・ロールを引き継ぐスタンバイ・データベースがロジカル・スタンバイ・データベースで、構成にフィジカル・スタンバイ・データベースが含まれている場合、スイッチオーバー後、フィジカル・スタンバイ・データベースは無効化されます。
注意: このため、通常は、スイッチオーバーにはロジカル・スタンバイ・データベースではなくフィジカル・スタンバイ・データベースを指定することをお薦めします。ロジカル・スタンバイ・データベースへのスイッチオーバーが必要な場合、フィジカル・スタンバイ・データベースを再作成する方法については、「ロール変更後の無効化されたデータベースの再有効化」を参照してください。
比較的すぐに元のプライマリ・データベースにスイッチバックする場合は、フィジカルおよびスナップショット・スタンバイ・データベースを無効なままにしておくことができます。フィジカルおよびスナップショット・スタンバイ・データベースはまだ元のプライマリ・データベースの実行可能なスタンバイ・データベースであるため、元のプライマリ・データベースへのスイッチバックの完了後、これらを再有効化できます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
スイッチオーバーが正常に完了しました。 |
ORA-16540: invalid argument |
このデータベースについて指定された名前が、有効なDB_UNIQUE_NAME値ではありませんでした。
|
ORA-16600: not connected to target standby database |
この関数は、プライマリ・データベースに接続されているときはコールできません。この関数は、ターゲット・スタンバイ・データベースに接続されている間にコールしてください。 |
ORA-16732: Oracle Clusterware is restarting the database instance |
Oracle Clusterwareで、ブローカに必要とされているモードになるよう、このデータベースを再起動中です。データベースが再起動された後に、この関数のコールを再試行してください。 |
ORA-16897: start database to mount mode |
スイッチオーバーが正常に完了しました。クライアントで、前のプライマリ・データベースを再起動してマウント・モードにする必要があります。 |
ORA-16897: start database to open mode |
スイッチオーバーが正常に完了しました。クライアントで、前のプライマリ・データベースを再起動してオープン・モードにする必要があります。 |
Other |
Data Guard Brokerでスイッチオーバーを完了できませんでした。戻り値で、この失敗の理由が示されます。 |
79.2.43 WAIT
WAIT関数を使用すると、様々なData Guard Brokerイベントの発生を待機できます。
WAITファンクション
DBMS_DG.WAIT (
wait_event IN BINARY_INTEGER
wait_time IN BINARY_INTEGER)
RETURN BINARY_INTEGER;パラメータ
| パラメータ | 説明 |
|---|---|
wait_event |
待機するData Guard Brokerイベント。次のいずれかになります。
|
wait_time |
指定された待機イベントの発生を待機する秒数。 |
使用上のノート
-
この関数では、2進整数が返されます。
戻り値
| エラー | 説明 |
|---|---|
ORA-00000: normal, successful completion |
待機対象のイベントが、wait_timeパラメータで指定された秒数以内に発生しました。 |
ORA-16509: request timed out |
待機対象のイベントが、wait_timeパラメータで指定された秒数以内に発生しませんでした。
|
Other |
Data Guard Brokerで、指定された待機イベントを待つことができませんでした。戻り値で、この失敗の理由が示されます。 |