説明
V4.3.X系では、このステートメントはOceanBaseデータベースV4.3.5 BP3バージョンから導入されました。
V4.4.X系では、このステートメントはOceanBaseデータベースV4.4.1バージョンから導入されました。
説明
このステートメントは、レート制限ルールを作成し、特定のSQLの並列度を制限するためのレート制限範囲を指定します。
注意事項
OceanBaseデータベースのOracleモードでCREATE CONCURRENT_LIMITING_RULEステートメントを実行するには、専用権限create any concurrent_limiting_ruleが必要です。
構文
CREATE CONCURRENT_LIMITING_RULE ccl_rule_name
ON `database`.`table`
TO '<usename>'@'ip'
FOR { ALL | UPDATE | SELECT | INSERT | DELETE }
filter_options:
[ FILTER BY KEYWORD('KEYWORD1', 'KEYWORD2',…) ]
with_options:
WITH MAX_CONCURRENCY = value1 [per sql]
パラメータの説明
パラメータ |
説明 |
|---|---|
ccl_rule_name |
必須。レート制限ルールの名前を表します。 |
database.table |
必須。データベースとテーブルの名前を表します。アスタリスク(*)を使用して任意の文字列に一致させることができます。
説明名前がSQLキーワードと競合するのを避けるため、ルール名の前後にバッククォート(`)を付けることを推奨します。 |
<usename>@<host> |
必須。アカウント名を表します。Host部分では、パーセント記号(%)を使用して任意の文字列に一致させることができます。 |
ALL|UPDATE \| SELECT \| INSERT\| DELETE |
必須。SQL文のタイプを表します。現在、ALL、UPDATE、SELECT、INSERT、DELETEタイプをサポートしています。
説明各レート制限ルールは、1種類のSQL文タイプのみを指定できます。 |
[ filter_options ] |
オプション。レート制限のキーワードを表します。
説明
|
with_options |
必須。レート制限の並列度を制御し、レート制限の統計粒度がルールレベルか、Format SQLID文レベルかを指定します。現在、MAX_CONCURRENCYパラメータのみをサポートしており、このレート制限ルールにマッチするSQL文の最大並列度を表します。 |
例
以下のコマンドを実行して、キーワードのレート制限を行います:
obclient> CREATE CONCURRENT_LIMITING_RULE sql1_keywords_ccl_rule
ON *.* TO '%'@'%' FOR SELECT
FILTER BY KEYWORD('table1', 'table2', 'c1') WITH MAX_CONCURRENCY 100;