Oracle10g の MSCS クラスタ [Cluster]
基本的には 9i のMSCSクラスタと変わりません。
http://ojaoki.blog.so-net.ne.jp/2006-03-26
ただ、初期化パラメータファイルに バイナリである SPFILE を使わなければならないそうです。
SPFILE だと、パラメータを動的に変更してそれをその時に格納する事になります。
init.ora のテキストファイルだと、有効になるのはOracleを起動する時なので、クラスタの各ノードにある init.ora を手で修正するだけでよかったのです。
SPFILE だと、Oracle稼働中に alter system set パラメータ = 値 SCOPE = SPFILE; とテキストファイルの編集ではなくてSQLで変更する事になるので、どのノードからでも単一のSPFILEにアクセス出来ないといけなくなりました。
このために、これまで各ローカルディスクの %ORACLE_HOME%\daatabase にあった初期化パラメータをクラスタの共有ディスク上に持っていかなければなりません。
まず Oracle をインストールします。すべてのクラスタのノードでインストールします。
データベースも先に作成して、後でクラスタにコンバートします。データベースのフォルダ構成は後でクラスタ化出来る様にしときます。具体的には ORACLE_HOME はローカルに、データベースファイルやコントロールファイルやREDOログ,アラートログ,アーカイブログ等々は共有ディスクへ作成します。データベース作成は最初のノードのみ。
Oracle Fail Safe をインストールします。これも全てのノードのローカルにインストールします。
クラスタにコンバートする前にOracle用のグループを作成します。グループを作成すると仮想サーバのアドレスと名前を同時に決める事になります。
前述の様に SPFILE は共有ディスクにないとならないので %ORACLE_HOME%\database フォルダを移動します。(画面はコピーになってますが、後で元のフォルダは削除してます。)
%ORACLE_HOME%\database に SPFILE が無いと一部のアプリケーションでは困るらしいので、移動先の database フォルダと %ORACLE_HOME%\database にハードリンクを張っておきます。リンクを張るためのツールとして junction.exe や linked.exe がありますが、Windowsのリソースキットに付属の linked.exe を使います。
リソースキットをインストール。
linked.exe でリンクを作成。C:\oracle\HO1\1020\database\SPFILEHO1.ORA を開くとリンク先の G:\oracle\HO1\sapdata1\database\SPFILEHO1.ORA が開きます。
%ORACLE_HOME%\database の削除からリンクの作成までは各ノードで行います。
データベースのクラスタへのコンバートをします。
Oracle Fail Safe Manager からローカルの Oracleデータベース を選択して Oracleグループに追加します。
この時に、データベース識別情報を入力しますが、パラメータファイルには直接 SPFILE を指定するのではなくて、
SPFILEの場所を指定したファイルを指定します。ちなみにローカルドライブの SPFILE が指定されてますが、実際にはハードリンクされた共有ドライブの SPFILE を見るようになってます。
だいぶかいつまんでますが、これで完成です。
クラスタアドミニストレータからはこんな感じで見えます。
http://ojaoki.blog.so-net.ne.jp/2006-03-26
ただ、初期化パラメータファイルに バイナリである SPFILE を使わなければならないそうです。
SPFILE だと、パラメータを動的に変更してそれをその時に格納する事になります。
init.ora のテキストファイルだと、有効になるのはOracleを起動する時なので、クラスタの各ノードにある init.ora を手で修正するだけでよかったのです。
SPFILE だと、Oracle稼働中に alter system set パラメータ = 値 SCOPE = SPFILE; とテキストファイルの編集ではなくてSQLで変更する事になるので、どのノードからでも単一のSPFILEにアクセス出来ないといけなくなりました。
このために、これまで各ローカルディスクの %ORACLE_HOME%\daatabase にあった初期化パラメータをクラスタの共有ディスク上に持っていかなければなりません。
まず Oracle をインストールします。すべてのクラスタのノードでインストールします。
データベースも先に作成して、後でクラスタにコンバートします。データベースのフォルダ構成は後でクラスタ化出来る様にしときます。具体的には ORACLE_HOME はローカルに、データベースファイルやコントロールファイルやREDOログ,アラートログ,アーカイブログ等々は共有ディスクへ作成します。データベース作成は最初のノードのみ。
Oracle Fail Safe をインストールします。これも全てのノードのローカルにインストールします。
クラスタにコンバートする前にOracle用のグループを作成します。グループを作成すると仮想サーバのアドレスと名前を同時に決める事になります。
前述の様に SPFILE は共有ディスクにないとならないので %ORACLE_HOME%\database フォルダを移動します。(画面はコピーになってますが、後で元のフォルダは削除してます。)
%ORACLE_HOME%\database に SPFILE が無いと一部のアプリケーションでは困るらしいので、移動先の database フォルダと %ORACLE_HOME%\database にハードリンクを張っておきます。リンクを張るためのツールとして junction.exe や linked.exe がありますが、Windowsのリソースキットに付属の linked.exe を使います。
リソースキットをインストール。
linked.exe でリンクを作成。C:\oracle\HO1\1020\database\SPFILEHO1.ORA を開くとリンク先の G:\oracle\HO1\sapdata1\database\SPFILEHO1.ORA が開きます。
%ORACLE_HOME%\database の削除からリンクの作成までは各ノードで行います。
データベースのクラスタへのコンバートをします。
Oracle Fail Safe Manager からローカルの Oracleデータベース を選択して Oracleグループに追加します。
この時に、データベース識別情報を入力しますが、パラメータファイルには直接 SPFILE を指定するのではなくて、
SPFILEの場所を指定したファイルを指定します。ちなみにローカルドライブの SPFILE が指定されてますが、実際にはハードリンクされた共有ドライブの SPFILE を見るようになってます。
だいぶかいつまんでますが、これで完成です。
クラスタアドミニストレータからはこんな感じで見えます。
2008-03-16 05:56
nice!(1)
コメント(0)
トラックバック(0)
コメント 0