[Doc] Update SQL Blacklist Doc (#63457)
This commit is contained in:
parent
ebf233f8bb
commit
6e343ed0ad
|
|
@ -5,7 +5,7 @@ sidebar_position: 80
|
|||
|
||||
# Blacklist Management
|
||||
|
||||
In some cases, administrators need to disable certain patterns of SQL to avoid SQL from triggering cluster crashes or unexpected high concurrent queries. The blacklist is only for Query STMT, INSERT STMT and CTAS STMT.
|
||||
In some cases, administrators need to disable certain patterns of SQL to avoid SQL from triggering cluster crashes or unexpected high concurrent queries. The blacklist is only for SELECT statements, INSERT statements (from v3.1 onwards), and CTAS statements (from v3.4 onwards).
|
||||
|
||||
StarRocks allows users to add, view, and delete SQL blacklists.
|
||||
|
||||
|
|
@ -67,6 +67,24 @@ ADD SQLBLACKLIST "select id_int from test_all_type_select1 order by id_int limit
|
|||
ADD SQLBLACKLIST "select id_int \\* 4, id_tinyint, id_varchar from test_all_type_nullable except select id_int, id_tinyint, id_varchar from test_basic except select (id_int \\* 9 \\- 8) \\/ 2, id_tinyint, id_varchar from test_all_type_nullable2 except select id_int, id_tinyint, id_varchar from test_basic_nullable"
|
||||
~~~
|
||||
|
||||
* Prohibit all INSERT INTO statements:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*";
|
||||
~~~
|
||||
|
||||
* Prohibit all INSERT INTO ... VALUES statements:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*values\\s*\\(";
|
||||
~~~
|
||||
|
||||
* Prohibit all INSERT INTO ... VALUES statements except those against the system-defined view `_statistics_.column_statistics`:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+(?!column_statistics\\b).*values\\s*\\(";
|
||||
~~~
|
||||
|
||||
## View blacklist
|
||||
|
||||
~~~sql
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ For more about SQL Blacklist, see [Manage SQL Blacklist](../../../../administrat
|
|||
:::tip
|
||||
|
||||
- This operation requires the SYSTEM-level BLACKLIST privilege. You can follow the instructions in [GRANT](../../account-management/GRANT.md) to grant this privilege.
|
||||
- Currently, StarRocks supports adding SELECT statements to the SQL Blacklist.
|
||||
- The blacklist is only for SELECT statements, INSERT statements (from v3.1 onwards), and CTAS statements (from v3.4 onwards).
|
||||
|
||||
:::
|
||||
|
||||
|
|
@ -60,3 +60,21 @@ mysql> ADD SQLBLACKLIST
|
|||
except select id_int, id_tinyint, id_varchar
|
||||
from test_basic_nullable";
|
||||
```
|
||||
|
||||
Example 5: Prohibit all INSERT INTO statements:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*";
|
||||
```
|
||||
|
||||
Example 6: Prohibit all INSERT INTO ... VALUES statements:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*values\\s*\\(";
|
||||
```
|
||||
|
||||
Example 7: Prohibit all INSERT INTO ... VALUES statements except those against the system-defined view `_statistics_.column_statistics`:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+(?!column_statistics\\b).*values\\s*\\(";
|
||||
```
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ sidebar_position: 80
|
|||
|
||||
# ブラックリスト管理
|
||||
|
||||
場合によっては、管理者が特定のSQLパターンを無効にして、SQLがクラスタのクラッシュや予期しない高い同時実行クエリを引き起こすのを避ける必要があります。
|
||||
場合によっては、管理者が特定のSQLパターンを無効にして、SQLがクラスタのクラッシュや予期しない高い同時実行クエリを引き起こすのを避ける必要があります。ブラックリストは、SELECT ステートメント、INSERT ステートメント(v3.1 以降)、および CTAS ステートメント(v3.4 以降)にのみ適用されます。
|
||||
|
||||
StarRocksは、ユーザーがSQLブラックリストを追加、表示、削除することを可能にします。
|
||||
|
||||
|
|
@ -67,6 +67,24 @@ ADD SQLBLACKLIST "select id_int from test_all_type_select1 order by id_int limit
|
|||
ADD SQLBLACKLIST "select id_int \\* 4, id_tinyint, id_varchar from test_all_type_nullable except select id_int, id_tinyint, id_varchar from test_basic except select (id_int \\* 9 \\- 8) \\/ 2, id_tinyint, id_varchar from test_all_type_nullable2 except select id_int, id_tinyint, id_varchar from test_basic_nullable"
|
||||
~~~
|
||||
|
||||
* すべての INSERT INTO ステートメントを禁止する:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*";
|
||||
~~~
|
||||
|
||||
* すべての INSERT INTO ... VALUES ステートメントを禁止する:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*values\\s*\\(";
|
||||
~~~
|
||||
|
||||
* システム定義ビュー `_statistics_.column_statistics` に対するものを除き、すべての INSERT INTO ... VALUES ステートメントを禁止する:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+(?!column_statistics\\b).*values\\s*\\(";
|
||||
~~~
|
||||
|
||||
## ブラックリストの表示
|
||||
|
||||
~~~sql
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ SQLブラックリストの詳細については、[Manage SQL Blacklist](../../
|
|||
:::tip
|
||||
|
||||
- この操作には、SYSTEMレベルのBLACKLIST権限が必要です。[GRANT](../../account-management/GRANT.md)の指示に従って、この権限を付与できます。
|
||||
- 現在、StarRocksはSELECT文をSQLブラックリストに追加することをサポートしています。
|
||||
- ブラックリストは、SELECT ステートメント、INSERT ステートメント(v3.1 以降)、および CTAS ステートメント(v3.4 以降)にのみ適用されます。
|
||||
|
||||
:::
|
||||
|
||||
|
|
@ -61,4 +61,22 @@ mysql> ADD SQLBLACKLIST
|
|||
from test_all_type_nullable2
|
||||
except select id_int, id_tinyint, id_varchar
|
||||
from test_basic_nullable";
|
||||
```
|
||||
```
|
||||
|
||||
例5: すべての INSERT INTO ステートメントを禁止する:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*";
|
||||
```
|
||||
|
||||
例6: すべての INSERT INTO ... VALUES ステートメントを禁止する:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*values\\s*\\(";
|
||||
```
|
||||
|
||||
例7: システム定義ビュー `_statistics_.column_statistics` に対するものを除き、すべての INSERT INTO ... VALUES ステートメントを禁止する:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+(?!column_statistics\\b).*values\\s*\\(";
|
||||
```
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ displayed_sidebar: docs
|
|||
|
||||
本文介绍如何管理 SQL 黑名单 (SQL Blacklist)。
|
||||
|
||||
您可以在 StarRocks 中维护一个 SQL 黑名单,以在某些场景下禁止特定类型的 SQL,避免此类 SQL 导致集群宕机或者其他预期之外的行为。黑名单功能在 Query、INSERT 和 CTAS 语句下生效。
|
||||
您可以在 StarRocks 中维护一个 SQL 黑名单,以在某些场景下禁止特定类型的 SQL,避免此类 SQL 导致集群宕机或者其他预期之外的行为。黑名单仅适用于 SELECT 语句、INSERT 语句(v3.1 及以上版本)以及 CTAS 语句(v3.4 及以上版本)。
|
||||
|
||||
> **注意**
|
||||
>
|
||||
|
|
@ -62,6 +62,24 @@ ADD SQLBLACKLIST "<sql>";
|
|||
ADD SQLBLACKLIST "select id_int \\* 4, id_tinyint, id_varchar from test_all_type_nullable except select id_int, id_tinyint, id_varchar from test_basic except select (id_int \\* 9 \\- 8) \\/ 2, id_tinyint, id_varchar from test_all_type_nullable2 except select id_int, id_tinyint, id_varchar from test_basic_nullable";
|
||||
```
|
||||
|
||||
* 禁止所有 INSERT INTO 语句:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*";
|
||||
~~~
|
||||
|
||||
* 禁止所有 INSERT INTO ... VALUES 语句:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*values\\s*\\(";
|
||||
~~~
|
||||
|
||||
* 禁止所有 INSERT INTO ... VALUES 语句,但针对系统定义视图 `_statistics_.column_statistics` 的操作除外:
|
||||
|
||||
~~~sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+(?!column_statistics\\b).*values\\s*\\(";
|
||||
~~~
|
||||
|
||||
## 展示黑名单列表
|
||||
|
||||
```sql
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ displayed_sidebar: docs
|
|||
:::tip
|
||||
|
||||
- 该操作需要 SYSTEM 级的 BLACKLIST 权限。请参考 [GRANT](../../account-management/GRANT.md) 为用户赋权。
|
||||
- 当前 StarRocks 支持将 SELECT 语句加入 SQL 黑名单。
|
||||
- 黑名单仅适用于 SELECT 语句、INSERT 语句(v3.1 及以上版本)以及 CTAS 语句(v3.4 及以上版本)。
|
||||
:::
|
||||
|
||||
## 语法
|
||||
|
|
@ -61,3 +61,21 @@ mysql> ADD SQLBLACKLIST
|
|||
except select id_int, id_tinyint, id_varchar
|
||||
from test_basic_nullable";
|
||||
```
|
||||
|
||||
示例五:禁止所有 INSERT INTO 语句:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*";
|
||||
```
|
||||
|
||||
示例六:禁止所有 INSERT INTO ... VALUES 语句:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+.*values\\s*\\(";
|
||||
```
|
||||
|
||||
示例七:禁止所有 INSERT INTO ... VALUES 语句,但针对系统定义视图 `_statistics_.column_statistics` 的操作除外:
|
||||
|
||||
```sql
|
||||
ADD SQLBLACKLIST "(?i)^insert\\s+into\\s+(?!column_statistics\\b).*values\\s*\\(";
|
||||
```
|
||||
|
|
|
|||
Loading…
Reference in New Issue