パラメータの値を変更した後、ビジネスニーズに応じて ALTER SYSTEM RESET ステートメントを使用して、パラメータの値をデフォルト値にリセットできます。
注意点
システムテナント(
sysテナント)はクラスタレベルのパラメータを確認およびリセットできます。ユーザーテナントはクラスタレベルのパラメータを確認することはできますが、リセットはできません。システムテナントとユーザーテナントは、どちらもテナントレベルのパラメータを確認およびリセットできます。
指定されたサーバーまたはゾーン上のパラメータ値のリセットはサポートされていません。
手順
システムテナントまたはユーザーテナントでクラスタにログインします。
接続例は以下のとおりですが、データベースへの接続時は実際の環境に合わせてください。
obclient -h10.xx.xx.xx -P2883 -utest@mysql#obdemo -p***** -Aデータベース接続操作の詳細については、データベース接続の概要(MySQLモード)およびデータベース接続の概要(Oracleモード)を参照してください。
以下のコマンドを実行し、パラメータの値を確認します。
obclient [(none)]> SHOW PARAMETERS LIKE '%enable_sql_audit%';クエリ結果は次のとおりです:
+-------+----------+----------------+----------+------------------+-----------+-------+---------------------------------------------------------------------------------------------------------------+----------+---------+---------+-------------------+---------------+-----------+ | zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault | +-------+----------+----------------+----------+------------------+-----------+-------+---------------------------------------------------------------------------------------------------------------+----------+---------+---------+-------------------+---------------+-----------+ | zone1 | observer | 172.xx.xxx.xxx | 2882 | enable_sql_audit | BOOL | False | specifies whether SQL audit is turned on. The default value is TRUE. Value: TRUE: turned on FALSE: turned off | OBSERVER | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | true | 0 | +-------+----------+----------------+----------+------------------+-----------+-------+---------------------------------------------------------------------------------------------------------------+----------+---------+---------+-------------------+---------------+-----------+ 1 row in set以下のコマンドを実行し、パラメータの値を変更します。
ステートメントは次のとおりです:
ALTER SYSTEM RESET parameter_name [SCOPE = {SPFILE | BOTH}] [TENANT [=] all | all_user | all_meta | tenant_name ];関連パラメータの説明は以下のとおりです:
SCOPEは構成パラメータの適用範囲を指定するために使用されます。デフォルト値はBOTHです。詳細は以下のとおりです:SPFILE:構成テーブル内のパラメータ値のみをリセットします。この変更はOBServerノードの再起動後に有効になります。BOTH:構成テーブルとメモリ内の値の両方をリセットします。変更は即時に反映され、OBServerノードが再起動した後も設定は有効です。
TENANT:システムテナントがすべてのユーザーテナント、すべてのMetaテナント、または指定されたテナントのテナントレベル構成パラメータをリセットするために使用されます。allとall_user:すべてのユーザーテナント。説明
OceanBaseデータベースでは、バージョンV4.2.1から、
TENANT = all_userとTENANT = allは同じ意味になりました。すべてのユーザーテナントに適用する場合は、TENANT = all_userの使用を推奨します。TENANT = allは今後廃止される予定です。all_meta:すべてのMetaテナント。tenant_name:指定したテナントの名前。
パラメータをリセットする際、クラスタレベルのパラメータはユーザーテナントから設定できませんし、システムテナント(
sysテナント)からユーザーテナントの設定として指定することもできません。例えば、
ALTER SYSTEM SET memory_limit='100G' TENANT='test_tenant'ステートメントを実行するとエラーが発生します。これはmemory_limitがクラスタレベルのパラメータだからです。パラメータがクラスタレベルかテナントレベルかを確認するには、SHOW PARAMETERS LIKE 'parameter_name';ステートメントの実行結果におけるscope列の値を確認します:scopeの値がCLUSTERの場合、それはクラスタレベルのパラメータです。scopeの値がTENANTの場合、それはテナントレベルのパラメータです。
例:
システムテナントがクラスタレベル構成パラメータとテナントレベル構成パラメータの値をリセットする場合
obclient [oceanbase]> ALTER SYSTEM RESET enable_sql_audit;obclient [oceanbase]> ALTER SYSTEM RESET undo_retention TENANT = all_user;ユーザーテナントがテナントレベル構成パラメータの値をリセットする場合
obclient [oceanbase]> ALTER SYSTEM RESET undo_retention;
リセットが成功した後、実際の状況(OBServerノードの再起動の有無)に応じて、
SHOW PARAMETERSステートメントを実行し、パラメータの値が正常にリセットされたかどうかを確認できます。obclient [(none)]> SHOW PARAMETERS LIKE '%enable_sql_audit%';結果は次のとおりです:
+-------+----------+----------------+----------+------------------+-----------+-------+---------------------------------------------------------------------------------------------------------------+----------+---------+---------+-------------------+---------------+-----------+ | zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault | +-------+----------+----------------+----------+------------------+-----------+-------+---------------------------------------------------------------------------------------------------------------+----------+---------+---------+-------------------+---------------+-----------+ | zone1 | observer | 172.xx.xxx.xxx | 2882 | enable_sql_audit | BOOL | True | specifies whether SQL audit is turned on. The default value is TRUE. Value: TRUE: turned on FALSE: turned off | OBSERVER | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | true | 1 | +-------+----------+----------------+----------+------------------+-----------+-------+---------------------------------------------------------------------------------------------------------------+----------+---------+---------+-------------------+---------------+-----------+ 1 row in set