説明
- V4.2.x系では、この構成パラメータはV4.2.5バージョンから導入されました。
- V4.3.x系では、この構成パラメータはV4.3.5 BP2バージョンから導入されました。
機能の概要
enable_lock_priorityはテーブルロックの優先順位スイッチです。有効にすると、特定のDDL(RENAME TABLE)が最も高いロック優先順位を持ちます。つまり、他のDDL、ロック操作、またはDMLがロックを待機している場合でも、対応するロックが解放されると、RENAME TABLEが最初にロックを取得します。
権限要件
パラメータの確認
sysテナントとすべてのユーザーテナントはSHOW PARAMETERSステートメント、またはGV$OB_PARAMETERSビューを使用してこのパラメータを確認できます。パラメータの変更
sysテナントとユーザーテナントはALTER SYSTEM SETステートメントを使用してこの構成パラメータを変更できます。
プロパティの説明
プロパティ |
説明 |
|---|---|
| パラメータタイプ | BOOL |
| デフォルト値 | FALSE |
| 値の範囲 |
|
| 変更は可能か | はい。ALTER SYSTEM SETステートメントを使用して変更できます。 |
| OBServerノードの再起動が必要か | 不要です。設定は即時に反映されます。 |
使用方法
gh-ostまたはOceanBase Developer Center(ODC)でOnline DDLを実行する前に、対応するテナントのenable_lock_priorityを有効にする必要があります。有効にした後は、ビューGV$OB_PARAMETERSを確認し、テナント内のすべてのマシンで設定が有効になっていることを確認する必要があります。Online DDLの実行が完了したら、DDL操作がユーザーのDML業務に影響を与えないように、この構成パラメータを無効にする必要があります。
設定例
テーブルロックの優先順位を有効にします。
ALTER SYSTEM SET enable_lock_priority = TRUE;パラメータの値を確認します。
SHOW PARAMETERS LIKE 'enable_lock_priority';実行結果は次のとおりです:
+-------+----------+----------------+----------+----------------------+-----------+-------+-----------------------------------------------------------------------------------------------------------------------------------+---------+--------+---------+-------------------+---------------+-----------+ | zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault | +-------+----------+----------------+----------+----------------------+-----------+-------+-----------------------------------------------------------------------------------------------------------------------------------+---------+--------+---------+-------------------+---------------+-----------+ | zone1 | observer | xxx.xx.xxx.001 | 2882 | enable_lock_priority | NULL | True | specifies whether to enable lock priority, which, when activated, gives certain DDL operations the highest table lock precedence. | TRANS | TENANT | DEFAULT | DYNAMIC_EFFECTIVE | False | 0 | | zone2 | observer | xxx.xx.xxx.002 | 2882 | enable_lock_priority | NULL | True | specifies whether to enable lock priority, which, when activated, gives certain DDL operations the highest table lock precedence. | TRANS | TENANT | DEFAULT | DYNAMIC_EFFECTIVE | False | 0 | | zone3 | observer | xxx.xx.xxx.003 | 2882 | enable_lock_priority | NULL | True | specifies whether to enable lock priority, which, when activated, gives certain DDL operations the highest table lock precedence. | TRANS | TENANT | DEFAULT | DYNAMIC_EFFECTIVE | False | 0 | +-------+----------+----------------+----------+----------------------+-----------+-------+-----------------------------------------------------------------------------------------------------------------------------------+---------+--------+---------+-------------------+---------------+-----------+ 3 row in setテーブルロックの優先順位を無効にします。
ALTER SYSTEM SET enable_lock_priority = FALSE;