RAC と RAC One Node の構成上の違い

# RAC One Node
　RAC One Node は共有ストレージを用いたアクティブ／スタンバイ型のクラスター・システムです。Oracle Real Application Clusters (RAC) と同様に Oracle Grid Infrastucture を使って障害発生時に自動的にインスタンスを再起動します。RAC One Node は RAC ほどの可用性は不要だが安価にクラスター・システムを構築したい場合に選択できる専用ライセンスです。

DBCA (Database Configuration Assistant) で RAC One Node を構成する場合は、「Database Type」項目に「Oracle RAC One Node database」を選択します。

![RAC One Node database](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/181284/051d4431-76a4-44ce-97bb-a3033334609d.png)

# Grid Infrastructure 構成
　RAC One Node を Grid Infrastructure に登録する属性には通常の RAC 構成といくつかの違いがあります。もっとも大きな違いは Type です。これは srvctl add database コマンドの -dbtype オプションの値が指定されます。データベース名（db_name）は O19X です。


|属性 |	RAC| RAC One Node	|比較|
|:---|:---|:---|:---|
|Database unique name:| O19X	| O19X	||
|Database name:| O19X	| O19X	||
|Oracle home:| /u01/app/oracle/product/19.3.0/dbhome_1|/u01/app/oracle/product/19.3.0/dbhome_1	||
|Oracle user:|oracle| oracle	||
|Spfile:| +DATA/O19X/PARAMETERFILE/spfile.268.1100187735	|+DATA/O19X/PARAMETERFILE/spfile.268.1100187735	||
|Password file:|+DATA/O19X/PASSWORD/pwdo19o.296.1196375121|+DATA/O19X/PASSWORD/pwdo19o.296.1196375121	||
|Domain:||||
|Start options:|open|open||
|Stop options:| immediate	|immediate	||
|Database role:| PRIMARY	|PRIMARY||
|Management policy:| AUTOMATIC	|AUTOMATIC||
|Server pools:|||
|Disk Groups:| DATA,ARCH	| DATA,ARCH	||
|Mount point paths:||||
|Services:| o19xa	| o19xa	||
|Type:| RAC	| RACOneNode|異なる|
|Online relocation timeout:|-| 30|RAC One Nodeのみ|
|Instance name prefix:|-|O19X|RAC One Nodeのみ|
|Start concurrency:||-|RACのみ|
|Stop concurrency:||-|RACのみ|
|Candidate servers:|| dbsvr-1,dbsvr-2|RAC One Nodeのみ|
|OSDBA group:| dba	| dba||
|OSOPER group:| oper	| oper	||
|Database instances:| O19X1,O19X2|O19X_1|異なる|
|Configured nodes: |dbsvr-1,dbsvr-2|-|RACのみ|
|CSS critical:| no	|no||
|CPU count: |0| 0||
|Memory target:| 0|	0	||
|Maximum memory:| 0| 0||
|Default network number for database services:|||
|Database is administrator managed	|||


# 初期化パラメーター
　２ノードの RAC と RAC One Node のデータベースでは初期化パラメーターにほとんど違いはありません。RAC One Node はシングル環境よりも RAC 環境に近い設定となります。以下の表は RAC 固有のパラメーターが RAC One Node 構成でどのように変わるかを示しています。

|初期化パラメーター|RAC | RAC One Node | 備考|
|:---|:---|:---|:---|
|cluster_database|TRUE|TRUE||
|cluster_database_instances|2|2||
|instance_name|O19X1, O19X2|O19X_1, O19X_2||
|instance_number|1, 2|1, 2||
|thread|1, 2|0||
|undo_tablespace|undotbs1, undotbs2|undotbs1, undotbs2||

  UNDO 表領域はノード毎に変更されます。面白いのは thread です。RAC 環境ではノード毎に番号が自動採番されますが、RAC One Node では 0 になります。またインスタンス名（instance_name）は RAC ではノード毎に番号が付与されますが、RAC One Node は「アンダーラインと番号」が付与されます。

# 表領域
　表領域は RAC 環境と RAC One Node 環境に違いはありません。 UNDO 表領域はノード単位に用意され、初期化パラメーター undo_tablespace はノード単位に別の値を指定します。

 ```SQL: 表領域のリスト
 SQL> SELECT tablespace_name FROM dba_tablespaces ORDER BY 1;

TABLESPACE_NAME
------------------------------
SYSAUX
SYSTEM
TEMP
UNDOTBS1
UNDOTBS2
USERS

6行が選択されました。
```

# Redo Log
　RAC One Node 環境は RAC と同じようにノード単位で Redo ログファイルが用意されます。ノード毎の Redo ログは THREAD# 列で区別されます。単一ノードでしか起動されないので CURRENT ステータスとなる Redo ログ・グループは一つだけです。

```SQL:　Redo ロググループの指定
SQL> SELECT * FROM GV$LOG;

   INST_ID     GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TI NEXT_CHANGE# NEXT_TIM     CON_ID
---------- ---------- ---------- ---------- ---------- ---------- ---------- --- ---------------- ------------- -------- ------------ -------- ----------
         2          1          1         15  209715200        512          2 YES INACTIVE               1481522 25-03-22      1548297 25-03-22          0
         2          2          1         16  209715200        512          2 YES INACTIVE               1548297 25-03-22      1602923 25-03-23          0
         2          3          2          1  209715200        512          2 YES INACTIVE               1344322 25-03-21      1344338 25-03-21          0
         2          4          2          2  209715200        512          2 NO  CURRENT                1595740 25-03-23   9.2954E+18 25-03-23          0
```

Author: Noriyoshi Shinoda / Date: March 24, 2025