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

srvctlでRACデータベースまたは単一インスタンスを停止/起動(ローリング)

OracleRAC & Grid

コマンド

# Whole database (all instances):
srvctl stop database -db <db_unique_name> -stopoption immediate
srvctl start database -db <db_unique_name>
# Rolling maintenance: stop one instance, moving its services to the other instances
srvctl stop instance -db <db_unique_name> -instance <instance> \
  -stopoption immediate -drain_timeout 300 -failover
srvctl start instance -db <db_unique_name> -instance <instance>
# By node:
srvctl stop instance -db <db_unique_name> -node <node> -stopoption immediate
# Start in a specific open mode (e.g. a physical standby in mount):
srvctl start database -db <db_unique_name> -startoption mount

概要

Clusterware経由でデータベースまたは選択したインスタンスを制御された方法で停止/起動する。-failoverで停止インスタンス上のサービスを使用可能なインスタンスへ移動し、-drain_timeoutでセッションのドレインを待機する。

使用する場面

パッチ適用、OSメンテナンス、パラメータ変更時のローリング(ノード単位)再起動に。計画的な全体停止に。

注意

RACではSQL*PlusのSHUTDOWNではなくsrvctlを使用する。そうしないとClusterwareがリソースのTARGETを把握できず、インスタンスを再起動する場合がある。stop databaseは全インスタンスを停止する=完全停止。サービスに使用可能インスタンスが定義されていない場合、-failoverで接続を移動できない。

DBAtlas で開く →

関連項目