第6章 メッセージ一覧
G.3 運用
G.3.1 スタンバイ運用における Oracle データベースの制御
Oracle Data Guard/Oracle Active Data Guardを使用したスタンバイ運用におけるOracleリソースの起動、停止、監視処理について説明 します。
Oracle インスタンスの起動
Oracle インスタンスの起動処理は以下のようになります。
1. su - <Oracleユーザー>
2. sqlplus /nolog 3. connect / as sysdba
4. startup nomount または startup mount
5. alter database mount; ("4"で startup nomount を行ったとき) 6. データベース・ロールに応じた処理を行います。
Oracleインスタンスリソースの設定で“PDBを使用”をyesに設定した場合、PDBを起動します。
- プライマリ・データベースの場合 ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合
- フィジカル・スタンバイ・データベースの場合
Oracle インスタンスリソースの設定項目REDOApplyの設定値に応じた処理を行います。
- ReceiveOnlyの場合 何も実施しません。
- NormalApplyの場合
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING ARCHIVED LOGFILE DISCONNECT;
- RealTimeApplyの場合
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;
- ReadOnlyOPENの場合 ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合 - RealTimeQueryNの場合
ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING ARCHIVED LOGFILE DISCONNECT;
- RealTimeQueryRの場合 ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;
- ロジカル・スタンバイ・データベースの場合
Oracle インスタンスリソースの設定項目REDOApplyの設定値に応じた処理を行います。
- ReceiveOnly、ReadOnlyOPEN、RealTimeQueryN、RealTimeQueryRの場合 ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合 - NormalApplyの場合
ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合 ALTER DATABASE START LOGICAL STANDBY APPLY;
- RealTimeApplyの場合 ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合 ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;
- スナップショット・スタンバイ・データベースの場合 ALTER DATABASE OPEN;
alter pluggable database all open; ※“PDBを使用”をyesに設定した場合
Oracle インスタンスの停止
Oracle インスタンスの停止処理は以下のようになります。
・ オペレーターによる userApplication の手動停止や手動切替えに伴う停止の場合 1. su - <Oracleユーザー>
3. connect / as sysdba
4. フィジカル・スタンバイ・データベース、またはロジカル・スタンバイ・データベースの場合、ログ適用サービスを停止します。
- フィジカル・スタンバイ・データベースの場合
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
- ロジカル・スタンバイ・データベースの場合
ALTER DATABASE ABORT LOGICAL STANDBY APPLY;
5. shutdown <immediate/abort/transactional> (StopModeStop で設定) デフォルト : immediate
6. "5"で Oracle インスタンスが停止しない場合、shutdown abort ("5"で、abort 以外の場合)
7. "5"または"6"で Oracle インスタンスが停止しない場合、バックグラウンド・プロセスに SIGKILL を送信して強制停止
・ リソース異常 (Oracle 以外のリソース異常も含む) に伴う停止の場合 1. su - <Oracleユーザー>
2. sqlplus /nolog 3. connect / as sysdba
4. shutdown <immediate/abort> (StopModeFail で設定) デフォルト : abort
5. "4"で Oracle インスタンスが停止しない場合、shutdown abort ("4"で、abort 以外の場合)
6. "4"または"5"で Oracle インスタンスが停止しない場合、バックグラウンド・プロセスに SIGKILL を送信して強制停止 Oracle インスタンスの監視
Oracle インスタンスの監視処理は以下のようになります。
1. Oracleバックグラウンド・プロセス(PMON・SMON)の存在を30秒間隔(固定)で確認。
Oracleインスタンスが起動し、プロセス(PMON・SMON)の存在を確認した場合は"2"へ進む。
2. su - <Oracleユーザー>
3. OracleデータベースのSYSTEMユーザー、またはSYSDBA権限にてOracleインスタンスへローカル接続。
4. プライマリ・データベース、ロジカル・スタンバイ・データベース、またはスナップショット・スタンバイ・データベースの場合、Oracle インスタンスのステータスが“OPEN”であるかを確認します。
フィジカル・スタンバイ・データベースの場合、Oracleインスタンスのステータスが“MOUNTED”または“OPEN”であるかを確認し ます。
5. Oracleバックグラウンド・プロセス(PMON・SMON・DBWn・LGWR・CKPT)の生存を監視。
監視間隔はデフォルト30秒で、設定項目「監視間隔(Interval)」で変更可能です。
6. プライマリ・データベースの場合、「監視間隔(Interval)」に設定された監視間隔でSQL監視を実行。SQL監視は、SYSTEM ユー ザーのデフォルト表領域上の監視用テーブルに対し、SQL(INSERT・UPDATE・DELETE・COMMIT) が正常に実施できるかを 確認します。ただし、前回のSQL監視からの経過時間をチェックし、60秒以上経過している場合にのみSQL監視を実行します。
7. PDBを監視。
Oracleインスタンスリソースの設定で“PDBを使用”をyesに設定し、かつCDBをOPEN状態で起動した場合、「監視間隔(Interval)」
に設定された監視間隔でPDBの監視を実行します。V$PDBS表で各PDBのOPEN_MODEを確認します。
8. 24時間に1度、Oracleインスタンスへ再接続。
待機ノードでは、"1"を実行し、Oracleバックグラウンド・プロセス(PMON・SMON)が存在しないことを確認します。
PDBの監視
V$PDBS表で各PDBのOPEN_MODEを確認します。
・ プライマリ・データベース、ロジカル・スタンバイ・データベース、スナップショット・スタンバイ・データベースの場合 OPEN_MODEが“READ WRITE”の場合は、PDBが正常と判断します。
OPEN_MODEが“READ WRITE”以外の場合は、PDBが異常と判断します。
・ フィジカル・スタンバイ・データベースの場合
Oracle インスタンスリソースの設定項目REDOApplyの設定値に応じた処理を行います。
- ReceiveOnly、NormalApply、RealTimeApplyの場合 PDBを監視しません。
- ReadOnlyOPEN、RealTimeQueryN、RealTimeQueryRの場合
OPEN_MODEが“READ ONLY”の場合は、PDBが正常と判断します。
OPEN_MODEが“READ ONLY”以外の場合は、PDBが異常と判断します。
「監視間隔(Interval)」に設定された監視間隔でPDBの監視を実行し、前回の監視時から状態が変わった場合はsyslogへメッセージを 出力します。PDBの異常による再起動やフェイルオーバは行いません。
PDBが正常な状態になった場合は以下のメッセージを出力します。
FSP_PCLW-ORACLE_FJSVclora: INFO: 9142: OPEN_MODE of PDB <PDB名> was OPEN. (CDB=<CDBのORACLE_SID> PDB=<PDB名> OPEN_MODE=<PDB のステータス>)
PDBの異常を検出した場合は以下のメッセージを出力します。
FSP_PCLW-ORACLE_FJSVclora: ERROR: 9242: clorapdbmon detected OPEN_MODE of PDB <PDB名> is invalid. (CDB=<CDBのORACLE_SID>
PDB=<PDB名> OPEN_MODE=<PDBのステータス>)
リスナーの起動、停止、監視
リスナーの起動・停止・監視は、Oracle Data Guardを使用しない環境と同じです。
"3.1.1 スタンバイ運用の場合"を参照してください。
ASMインスタンスの起動、停止、監視
ASMインスタンスの起動・停止・監視は、Oracle Data Guardを使用しない環境と同じです。
"3.1.1 スタンバイ運用の場合"を参照してください。