これで準備が整ったので、DBCAによりOracleデータベースインスタンスを作成します。
RAC構成のインスタンスの作成は、DBCAを起動してOracle Real Application Clusters databaseを選択するところから始まります。非RACのインスタンスを作成するときと最初に異なる点は、RACを構成するノードを選択する画面がある事でしょう。
次の相違点は、グローバルデータベース名を指定するところでの指定値がインスタンスにどのような影響を与えるかという点です。
非RACインスタンスの場合、例えばグローバルデータベース名として「hogehoge1.hoge.co.jp」のようにDBCAでグローバルデータベース名を指定するとSIDとして自動的に「hogehoge1」が採用されます。しかし、RACではノードごとにSIDが「hogehoge11」「hogehoge12」というようにDBCAで表示されているSIDプレフィックスの後ろに通番が付きます。
今回は、RAC全体のグローバルデータベース名として「hogehoge1.hogehoge10.hoge.co.jp」として、ノードごとのSIDが「hogehoge11」「hogehoge12」になるようにしました。
### ここに画像がはいる
SERACではASMを使う事が前提となっているためDBCAの作成場所もASMしか選択できないように「Cluster File System」や「Raw Devices」のオプションはグレーアウトされています。
### ここに画像がはいる
RACではRAC全体の接続点としてデータベースサービスを定義します。このときTAFポリシーといってRACの各ノードとクライアントがどのように接続するかのポリシーを設定します。通常はデフォルトの基本(basic)で充分ですが、要件によっては事前(Pre-connect)を選択して、全ノードとのコネクションを行っておく事でノードダウン時のダウンタイムを短縮する(その代わり接続用の資源がより多く必要)ように設定する事も可能です。
### ここに画像がはいる
あとは非RACの場合と同じような指定を行い、DBCAの画面を進めて行けばインスタンスの生成が開始され、完了すると
- グローバルデータベース名
- SIDプレフィックス
- サーバーパラメータファイル名
- dbconsoleのURL
などを表示した完了画面が表示されてインスタンスの生成が完了します。
### ここに画像がはいる
起動時自動実行の設定
/etc/oratabファイルに書かれているインスタンス起動設定は「N」になっているので「Y」にしてリブートしたときに自動的にインスタンスを起動するように変更します。
+ASM1:/u01/app/oracle/product/10.2.0/db_1:Y
zweikps:/u01/app/oracle/product/10.2.0/db_1:Y
このファイルの内容をscpコマンドにより全ノードに配布します。
RACではない場合、/etc/oratabファイルの設定に基づきOracleデータベースインスタンスを起動する/etc/init.d/dboraファイルを「手動作成」するなどの作業が必要ですが、RACでは必要ありません。なぜならば、RACの場合は/etc/oratabファイルの設に基づきOracle ClusterwareがOracleデータベースインスタンスの起動を行うためです。また、Oracle Clusterwareの/etc/init.d/dboraファイルに相当するものはOracle Clusterwareインストール時に自動的に作成、設定されています。