説明
このステートメントは、ユーザーログストリームを作成するために使用されます。
使用制限と注意事項
現在、通常のユーザーログストリームのみの作成がサポートされており、ブロードキャストログストリームの作成はサポートされていません。
現在のバージョンでは、テナントの同種ゾーンモードと異種ゾーンモードをサポートしています:
同種ゾーンモードでは、Unit Groupを指定してログストリームを作成する必要があります。
異種ゾーンモードでは、UNIT_LISTを指定してログストリームを作成する必要があります。
同種ゾーンモードと異種ゾーンモードの詳細な違いについては、データ分散を参照してください。
ログストリームの作成操作は、プライマリテナントでのみ実行できます。また、ログストリームを作成するテナントの
STATUSとSWITCHOVER_STATUSはNORMALである必要があります。ログストリームを作成する際:
同種ゾーンモードでは、対象
UNIT_GROUPの状態がACTIVEである必要があり、ビューDBA_OB_UNITS内の対象UNIT_GROUP_IDの値が0であってはなりません。異種ゾーンモードでは、対象
UNIT_LISTの状態がACTIVEである必要があり、指定した対象UNIT_LISTは空にすることはできません。
作成予定のログストリームに
PRIMARY_ZONEを指定する場合、指定したZoneがテナントのZONE_LISTに含まれていることを確認する必要があります。ログストリームのPRIMARY_ZONEの設定は、テナントのPRIMARY_ZONEの設定とは若干異なります。ログストリームでは、z1やz2など単一のZoneのみを指定でき、テナントのようにz1,z2、z1; z2、RANDOMといった複数のZoneを指定することはできません。ロードバランシング関連のパラメータは、値を
Falseに設定し、無効の状態に保つことを推奨します。その理由は以下の通りです:テナントレベルのパラメータenable_rebalanceが有効、すなわち値が
Trueの場合、システムは作成されたログストリームをターゲットUNIT_GROUPから他のUNIT_GROUPへ移行します。テナントレベルのパラメータenable_transferが有効、すなわち値が
Trueの場合、作成されたログストリームは削除される可能性があります。
権限要件
このステートメントを実行するユーザーはALTER SYSTEM権限を持っている必要があります。OceanBaseデータベースの権限の詳細については、MySQLモードの権限分類およびOracleモードの権限分類を参照してください。
構文
ALTER SYSTEM CREATE LS
{UNIT_GROUP [=] unit_group_id} | {UNIT_LIST [=] (unit_id_list)}
[,PRIMARY_ZONE [=] 'zone_name']
[TENANT [=] 'tenant_name'];
パラメータ説明
パラメータ |
説明 |
|---|---|
| unit_group_id | 作成するログストリームのターゲット UNIT_GROUP のIDを指定します。同種ゾーンモードでのみ適用されます。 |
| unit_id_list | 作成するログストリームが分散配置されるUnitのリストを指定します。複数のunit_idは半角カンマ(,)で区切ります。異種ゾーンモードでのみ適用されます。 |
| zone_name | 作成するログストリームのターゲットプライマリゾーンを指定します。PRIMARY_ZONE を指定しない場合、システムが自動的にゾーンを選択して割り当てます。 |
| tenant_name | オプションです。操作対象のテナントを指定します。
注意システムテナントのみが他のテナントを指定できます。ユーザーテナントは自身のテナントのみを指定できます。このステートメントでは、 |
例
システムテナント
システムテナントは、テナント
obtenantのために、ID が 1001 のUNIT_GROUPにログストリームを作成します。obclient> ALTER SYSTEM CREATE LS UNIT_GROUP 1001 TENANT = obtenant;システムテナントは、テナント
obtenantのために、ID が 1001 のUNIT_GROUPにログストリームを作成し、そのログストリームのPRIMARY_ZONEをz1に設定します。obclient> ALTER SYSTEM CREATE LS UNIT_GROUP 1001, PRIMARY_ZONE 'z1' TENANT = obtenant;ユーザーテナント
ユーザーテナントは、自身のために、ID が 1001 の
UNIT_GROUPにログストリームを作成します。obclient> ALTER SYSTEM CREATE LS UNIT_GROUP 1001;ユーザーテナントは、自身のために、ID が 1001 の
UNIT_GROUPにログストリームを作成し、そのログストリームのPRIMARY_ZONEをz1に設定します。obclient> ALTER SYSTEM CREATE LS UNIT_GROUP 1001, PRIMARY_ZONE 'z1';
システムテナント
システムテナントは、テナント
obtenantのために、ID が 1001、1002、1003 のUNIT_LISTにログストリームを作成します。obclient> ALTER SYSTEM CREATE LS UNIT_LIST = (1001,1002,1003) TENANT = obtenant;システムテナントは、テナント
obtenantのために、ID 1001、1002、1003 のUNIT_LISTにログストリームを作成し、そのログストリームのPRIMARY_ZONEをz1に設定します。obclient> ALTER SYSTEM CREATE LS UNIT_LIST = (1001,1002,1003), PRIMARY_ZONE 'z1' TENANT = obtenant;ユーザーテナント
ユーザーテナントは、自身のために、ID が 1001、1002、1003 の
UNIT_LISTにログストリームを作成します。obclient> ALTER SYSTEM CREATE LS UNIT_LIST = (1001,1002,1003);ユーザーテナントは、自身のために、ID が 1001、1002、1003 の
UNIT_LISTにログストリームを作成し、そのログストリームのPRIMARY_ZONEをz1に設定します。obclient> ALTER SYSTEM CREATE LS UNIT_LIST = (1001,1002,1003), PRIMARY_ZONE 'z1';
関連ドキュメント
ログストリームの作成手順の詳細については、ログストリームの作成を参照してください。