管理ポリシー（自動起動）の確認・設定

クラスターリソース「DB/サービス」は管理ポリシーで自動起動の有効化/無効化を設定ができる。管理ポリシーで自動起動を有効化したリソースは、「srvctl start database(instance)」を実行した際に自動起動する。

★注意★
DBとサービスで管理ポリシーの「AUTOMATIC/MANUAL」の挙動が異なるので注意が必要。
【要約】
・AUTOMATIC
DB　　  ：障害発生時のみ、次回自動起動する。（手動で停止した場合は次回自動起動しない）
サービス：無条件で自動起動する。
・MANUAL
DB　　　：自動起動しないが、Restart構成に限り、障害発生時のみ次回自動起動する。
サービス：障害が発生した時に限り、次回自動起動する。

■DBの管理ポリシー
・AUTOMATIC
DBを手動で停止した場合、次回クラスター起動時にDBは自動起動しない。
DBが予期せぬ状態（クラスターごと停止された、PMONがKILLされてインスタンスが停止した等）で停止した場合、次回DBは自動起動される。
・MANUAL
自動実行しないが、Restart構成の場合、障害が発生した場合のみ、次回自動実行する。（RACは自動実行しない）

■サービスの管理ポリシー
・AUTOMATIC
DBを手動で停止した場合でも障害で停止した場合でも、次回サービスは自動起動される。
・MANUAL
自動起動しないがOracle Clusterwareは実行中のサービスを監視し、障害が発生すると再起動される。


[参考リンク](https://docs.oracle.com/cd/E57425_01/121/RACAD/GUID-539C0211-6AA2-44A3-9699-8DE9FBD9867D.htm "タイトル")

### 管理ポリシー設定を確認する

```
--DBの管理ポリシー設定を確認する

＜構文＞
# srvctl config database -d <db_name>

＜実行例＞
[root@rac19c-node1 ~]# srvctl config database -d orcl
一意のデータベース名: orcl
データベース名: orcl
Oracleホーム: /u01/app/oracle/product/19.0.0/dbho#me_1
Oracleユーザー: oracle
spfile: +DATA/ORCL/PARAMETERFILE/spfile.300.1070776865
パスワード・ファイル: +DATA/ORCL/PASSWORD/pwdorcl.284.1070770639
ドメイン: oracle.com
開始オプション: open
停止オプション: immediate
データベース・ロール: PRIMARY
管理ポリシー: AUTOMATIC　　★「AUTOMATIC」は自動起動、「MANUAL」は手動起動
サーバー・プール:
ディスク・グループ: DATA,RECO
マウント・ポイントのパス:
サービス: orcl_cdb,orcl_pdb
タイプ: RAC
開始の同時実行性:
停止の同時実行性:
OSDBAグループ: dba
OSOPERグループ: oper
データベース・インスタンス: orcl1,orcl2
構成されたノード: rac19c-node1,rac19c-node2
CSSクリティカル: no
CPU数: 0
メモリー・ターゲット: 0
最大メモリー: 0
データベース・サービスのデフォルト・ネットワーク番号:
データベースは管理者によって管理されています


--サービスの管理ポリシー設定を確認する

＜構文＞
# srvctl config service -d <db_name>

＜実行例＞
[root@rac19c-node1 ~]# srvctl config service -d orcl
サービス名: orcl_cdb
サーバー・プール:
カーディナリティ: 2
サービス・ロール: PRIMARY
管理ポリシー: AUTOMATIC　　★「AUTOMATIC」は自動起動、「MANUAL」は手動起動
DTPトランザクション: false
AQのHA通知: false
グローバル: false
コミット結果: false
フェイルオーバー・タイプ:
フェイルオーバー・メソッド:
フェイルオーバー再試行:
フェイルオーバー遅延:
フェイルオーバー・リストア: NONE
接続ロード・バランシングの目標: LONG
ランタイム・ロード・バランシングの目標: NONE
TAFポリシー仕様: NONE
エディション:
プラガブル・データベース名:
ハブ・サービス:
最大タイム・ラグ: ANY
SQL翻訳プロファイル:
保存時間: 86400秒
リプレイ開始時間: 300秒
ドレイン・タイムアウト:
停止オプション:
セッション状態一貫性: DYNAMIC
GSMフラグ: 0
サービスは有効です
優先インスタンス: orcl1,orcl2
使用可能なインスタンス:
CSSクリティカル: no
サービスがJavaを使用する: false

サービス名: orcl_pdb
サーバー・プール:
カーディナリティ: 2
サービス・ロール: PRIMARY
管理ポリシー: AUTOMATIC　　★「AUTOMATIC」は自動起動、「MANUAL」は手動起動
DTPトランザクション: false
AQのHA通知: false
グローバル: false
コミット結果: false
フェイルオーバー・タイプ:
フェイルオーバー・メソッド:
フェイルオーバー再試行:
フェイルオーバー遅延:
フェイルオーバー・リストア: NONE
接続ロード・バランシングの目標: LONG
ランタイム・ロード・バランシングの目標: NONE
TAFポリシー仕様: NONE
エディション:
プラガブル・データベース名: pdb
ハブ・サービス:
最大タイム・ラグ: ANY
SQL翻訳プロファイル:
保存時間: 86400秒
リプレイ開始時間: 300秒
ドレイン・タイムアウト:
停止オプション:
セッション状態一貫性: DYNAMIC
GSMフラグ: 0
サービスは有効です
優先インスタンス: orcl1,orcl2
使用可能なインスタンス:
CSSクリティカル: no
サービスがJavaを使用する: false
```

#### 管理ポリシー設定コマンド

```
--DBの管理ポリシーを自動起動にする

＜構文＞
# srvctl modify database -d <db_name> -policy AUTOMATIC

＜実行例＞
# srvctl modify database -d orcl -policy AUTOMATIC  

--DBの管理ポリシーを手動起動にする

＜構文＞
# srvctl modify database -d <db_name> -policy MANUAL

＜実行例＞
# srvctl modify database -d orcl -policy MANUAL  


--サービスの管理ポリシーを自動起動にする

＜構文＞
# srvctl modify service -db <db_name> -service <service_name> -policy AUTOMATIC

＜実行例＞
# srvctl modify service -db orcl -service orcl_pdb -policy AUTOMATIC
```

#### AUTO_STARTリソース属性確認コマンド

```
クラスターリソースの管理ポリシーをAUTOMATICにするとAUTO_STARTリソース属性はallwaysになる。
クラスターリソースの管理ポリシーをNANUALにするとAUTO_STARTリソース属性はrestoreになる。


--DBのAUTO_STARTリソース属性を確認する

＜構文＞
# crsctl status resource <resource_name> -p -attr AUTO_START

＜実行例＞
# crsctl status resource ora.orcl.db -p -attr AUTO_START
NAME=ora.orcl.db
AUTO_START=restore

AUTO_STARTは「restore/allways」

--サービスのAUTO_STARTリソース属性を確認する

＜構文＞
# crsctl status resource <resource_name> -p -attr AUTO_START

＜実行例＞
# crsctl status resource ora.orcl.orcl_cdb.svc -p -attr AUTO_START
NAME=ora.orcl.orcl_cdb.svc
AUTO_START=restore
```

PDBサービスの自動起動についてはPDBのsave state設定も関係してくる。
PDBのsave state設定については「」を参照。