This function modifies the attributes of a filtering rule, including the filtering rule name, bound client name, client IP address, user, and matching mode.
This syntax is supported only by clusters of 9.1.0.100 and later versions.
1 2 3 4 5 6 7 | ALTER BLOCK RULE block_name [ [ TO user_name@'host' ] | [ TO user_name ] | [ TO 'host' ] | [ TO DEFAULT ] ] | [ FOR UPDATE | SELECT | INSERT | DELETE | MERGE | DEFAULT ] | FILTER BY { SQL ( 'text' ) | TEMPLATE ( template_parameter = value ) } [ WITH ( { with_parameter = value }, [, ... ] ) ]; ALTER BLOCK RULE block_name RENAME to new_block_name; |
Name of the query filtering rule whose attributes need to be modified.
Value range: a string. It must comply with the naming convention.
Queries the users to which the filtering rule applies.
Value range: A string. It must be a valid username.
Queries the client IP address to which the filtering rule applies.
Value range: a string of valid IP addresses.
Queries the regular expression matching statement of the filtering rule.
Value range: a string or a regular expression.
Queries a filtering rule matching template.
Value range: unique_sql_id/sql_hash. The value is a character string, where unique_sql_id must be all digits.
Queries filtering rule options.
Valid value:
Create a query rule query_block.
1 | CREATE BLOCK RULE query_block FILTER BY SQL('update table_table set a=1'); |
Modify the attributes of the query rule query_block.
1 | ALTER BLOCK RULE query_block TO user1@'192.168.x.x' FOR SELECT FILTER BY SQL('select * from table_name')WITH(application_name='gsql',query_band='test1',table_num='2',partition_num='3',estimate_row='1000',resource_pool='rsp1',max_active_num='3',is_warning='off'); |
Rename the query rule query_block.
1 | ALTER BLOCK RULE query_block RENAME TO query_block_new; |