Note
This statement is available starting from OceanBase Database V4.3.5 BP3 for V4.3.X versions.
For V4.4.X versions, this statement is available starting from OceanBase Database V4.4.1.
Purpose
This statement is used to create a throttling rule, specifying the throttling scope to limit the concurrency of specific SQL statements.
Limitations and considerations
To execute the CREATE CONCURRENT_LIMITING_RULE statement in Oracle mode of OceanBase Database, you need the create any concurrent_limiting_rule privilege.
Syntax
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]
Parameters
| Parameter | Description |
|---|---|
ccl_rule_name |
Required. The name of the throttling rule. |
database.table |
Required. The name of the database and table. You can use the asterisk (*) to match any name.
NoteTo avoid name conflicts with SQL keywords, we recommend that you add backticks (`) before and after the rule name. |
<usename>@<host> |
Required. The username. The host part supports the use of the percent sign (%) to match any host. |
ALL|UPDATE \| SELECT \| INSERT\| DELETE |
Required. The type of the SQL statement. The supported types are ALL, UPDATE, SELECT, INSERT, and DELETE.
NoteEach throttling rule can only specify one type of SQL statement. |
[ filter_options ] |
Optional. The throttling keywords.
Note
|
with_options |
Required. Used to control the concurrency limit and specify the throttling granularity at the rule level or the statement level. Currently, only the MAX_CONCURRENCY parameter is supported, which specifies the maximum concurrency for SQL statements that match the throttling rule. |
Examples
Execute the following command to throttle based on keywords:
obclient> CREATE CONCURRENT_LIMITING_RULE sql1_keywords_ccl_rule
ON *.* TO '%'@'%' FOR SELECT
FILTER BY KEYWORD('table1', 'table2', 'c1') WITH MAX_CONCURRENCY 100;
