DBAtlas · データベース運用アトラス

優先/使用可能インスタンスを指定してRACサービスを追加(Application Continuityを含む)

OracleRAC & Grid

コマンド

srvctl add service -db <db_unique_name> -service <service> \
  -preferred <inst1>,<inst2> -available <inst3> \
  -pdb <pdb> -role PRIMARY -policy AUTOMATIC \
  -failovertype TRANSACTION -commit_outcome TRUE \
  -failoverretry 30 -failoverdelay 10 \
  -clbgoal SHORT -rlbgoal SERVICE_TIME -notification TRUE \
  -drain_timeout 300 -stopoption IMMEDIATE
srvctl start service -db <db_unique_name> -service <service>
# Verify:
srvctl config service -db <db_unique_name> -service <service>
srvctl status service -db <db_unique_name> -service <service>

概要

通常は優先インスタンスで稼働し、障害時に使用可能インスタンスへ移動するアプリケーション用サービスを定義する。-role PRIMARYを指定すると、Data Guard環境でプライマリロールのときのみ起動する。

使用する場面

アプリケーションをインスタンスではなくサービスに接続させる、ワークロードをノード間で分割する、計画メンテナンス時にシームレスなフェイルオーバー(drain/failover)を可能にするため。

注意

アプリケーションはSIDやインスタンス名ではなく、このサービス名で(SCAN経由で)接続する必要がある。-failovertype TRANSACTION(Application Continuity)にはアプリケーション/ドライバの対応が必要。不明な場合は-failovertype SELECT(TAF)またはNONEから始める。SYS$サービスやdb_unique_name名のデフォルトサービスをアプリケーションに使用しない。

DBAtlas で開く →

関連項目