SSブログ

Oracle Data Guard その⑥ [DBMS]

スタンバイDBの構築まで出来ましたので、今度はプライマリDBとスタンバイDBを入れ替えるスイッチオーバーをしてみます。
[スイッチオーバー]
プライマリDB→スタンバイDB
スタンバイDB→プライマリDB

ちなみに、プライマリDBが破損してスタンバイDBをプライマリDBにするのはフェイルオーバーと言います。
[フェイルオーバー]
プライマリDB→破棄
スタンバイDB→プライマリDB

[スイッチオーバー]
スイッチオーバーやフェイルオーバーは dgmgrl で行います。
スイッチオーバーの場合、どちらのサーバーにコネクトしてもかまいません。
予め show configuration でどちらがプライマリでどちらがスタンバイであるか調べます。
今回は pan がプライマリです。
01.jpg
以下のコマンドで themisto へスイッチオーバーします。
switchover to so1_themisto
02.jpg
スイッチオーバー後に再コネクト(コネクトしているのは操作ミス。そんな必要はありません。)して切り替わっている事を確認しています。
スイッチオーバーしたので、元プライマリDBにコネクトして DELETE してみてもスタンバイDBでリードオンリーになっているので削除出来ません。
03.jpg
スイッチオーバーはプライマリDBとスタンバイDBが入れ替わるだけなので何回でも行えます。
switchover to so1_pan でプライマリDBを元に戻しています。
04.jpg

スイッチオーバーは来たるべきフェイルオーバーに備えてスタンバイ側の準備をするための機能といったところでしょうか。

[フェイルオーバー]
フェイルオーバーはスタンバイ側にコネクトして行います。
プライマリ側が壊れている前提だからかと思います。
予め show configuration でどちらがプライマリでどちらがスタンバイであるか調べます。
今回は pan がプライマリです。
以下のコマンドで themisto へフェイルオーバーします。
failover to so1_themisto
01.jpg
フェイルオーバー後に dgmgrl でステイタスを確認すると、元プライマリDBは再インストールが必要になってます。
02.jpg
実際に元プライマリDBの dgmgrl にコネクトしてみても再構築が必要だと言われてしまいます。
03.jpg
実際にDBへコネクトしても、オープンされません。
04.jpg
元プライマリDBはそのままでは使えませんのでバックアップから戻して、スタンバイDBとして再構築する必要があります。
再びプライマリDBとして使う場合は、スタンバイDBとして再構築した後にスイッチオーバーしてプライマリDBにします。
その前に、新しくプライマリになった側で Data Guard Broaker で元プライマリDBの情報を一旦削除します。
remove database so1_pan
05.jpg
後はスタンバイDB構築と同じ手順でスタンバイDBとして作成します。
・DBリストア(又はDBコピー)
・スタンバイ用コントロールファイル作成↓とコピー
alter database create standby controlfile as 'E:\oracle\SO1\CNTRLSO1.DBF' reuse;
・Data Guard Broaker に構成追加↓とプロパティの設定
add database so1_themisto as connect identifier is so1_themisto maintained as physical;
・Data Guard Broaker の構成有効化
enable configuration;

とりあえず以上

nice!(0)  コメント(1)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 1

aki-aoki

スイッチした側でもSAPを起動できる様にするには、SAPを両側ともドメインインストールするか、ローカルインストールの場合はスイッチした側で以下を実行すればSAPが起動できる様になります。
sqlplus /nolog @oradbusr.sql SAPSR3 NT <stabdby server name> <SID>
brconnect -u / -f chpass -o sapsr3 -p <sap_pwd>

SAPを起動するにはOPS$<コンピュータ名>|<ドメイン名>\OSユーザのOracleユーザとテーブルSAPUSER が必要になるので、それが上記設定になります。
でも、SSOとかSSLは出来ないかも?
それとJavaSystemも内部にインスタンスIDを持っているので簡単にはいかないみたいです。

SAPをOracleと別サーバにすると、Oracleへの接続情報を変える事で使える様です。この場合は別途SAPのみHigh Availability を考えないと。

以上はSAPの公式な情報ではないので注意願います。
by aki-aoki (2010-12-17 23:19) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

Oracle Data Guard その..HITACHI Ultrastar A7.. ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。