diff --git a/docs/deploy-manual/config.md b/docs/deploy-manual/config.md
index b60489e83..3729505c3 100644
--- a/docs/deploy-manual/config.md
+++ b/docs/deploy-manual/config.md
@@ -41,7 +41,7 @@ dms:
- db_type: MySQL
logo_path: "/logo/mysql.png"
params:
- - db_type: Postgres
+ - db_type: PostgreSQL
logo_path: "/static/logo/pg.png"
params:
- db_type: Oracle
diff --git a/docs/support/compare.md b/docs/support/compare.md
index 4f91b36e3..68e58237f 100644
--- a/docs/support/compare.md
+++ b/docs/support/compare.md
@@ -580,10 +580,10 @@ title: 功能对比
MyBatis |
√ |
- |
- |
√ |
- |
+ √ |
+ √ |
+ √ |
阿里RDS MySQL慢日志 |
@@ -636,11 +636,11 @@ title: 功能对比
其他 |
规则数量 |
- 155 |
- 122 |
+ 175 |
146 |
- 117 |
- 119 |
+ 162 |
+ 150 |
+ 153 |
@@ -662,7 +662,7 @@ title: 功能对比
√ |
√ |
√ |
- |
+ √ |
√ |
√ |
@@ -671,7 +671,7 @@ title: 功能对比
√ |
√ |
√ |
- |
+ √ |
√ |
√ |
@@ -680,7 +680,7 @@ title: 功能对比
|
√ |
√ |
- |
+ √ |
|
√ |
@@ -689,7 +689,7 @@ title: 功能对比
√ |
√ |
√ |
- |
+ √ |
|
√ |
@@ -698,7 +698,7 @@ title: 功能对比
√ |
√ |
|
- |
+ √ |
|
√ |
@@ -708,7 +708,7 @@ title: 功能对比
|
|
√ |
- |
+ √ |
|
√ |
@@ -735,7 +735,7 @@ title: 功能对比
√ |
√ |
√ |
- |
+ √ |
|
√ |
@@ -750,12 +750,12 @@ title: 功能对比
MyBatis |
- |
- |
- |
- |
- |
- |
+ √ |
+ √ |
+ √ |
+ √ |
+ √ |
+ √ |
阿里RDS MySQL慢日志 |
@@ -814,10 +814,10 @@ title: 功能对比
其他 |
规则数量 |
- 85 |
+ 114 |
83 |
60 |
- 21 |
+ 72 |
23 |
83 |
diff --git a/docs/user-manual/allinstance.md b/docs/user-manual/allinstance.md
new file mode 100644
index 000000000..a92faeb95
--- /dev/null
+++ b/docs/user-manual/allinstance.md
@@ -0,0 +1,15 @@
+---
+title: 全局数据源管理
+---
+# 全局数据源管理
+
+* 当需要对多个项目中的数据源进行统一修改或查看时,此功能可以帮助迅速定位并进行操作。
+* 当需要进行跨项目管理工作时,可以使用该功能,确保对数据源的分布和配置情况一目了然,实现更高效的数据源管理和项目协调。
+
+
+## 使用步骤
+
+* 导航至全局设置,选择数据源管理页面,以访问平台管理的所有数据源列表。
+* 利用提供的筛选工具,根据项目需求或特定条件,精确筛选出您关注的数据源。
+
+![instancelist](img/instancelist.png)
\ No newline at end of file
diff --git a/docs/user-manual/img/instancelist.png b/docs/user-manual/img/instancelist.png
new file mode 100644
index 000000000..753f11b55
Binary files /dev/null and b/docs/user-manual/img/instancelist.png differ
diff --git a/docs/user-manual/project/audit_task/baiduyunrds.md b/docs/user-manual/project/audit_task/baiduyunrds.md
index eaa393078..4da2847fa 100644
--- a/docs/user-manual/project/audit_task/baiduyunrds.md
+++ b/docs/user-manual/project/audit_task/baiduyunrds.md
@@ -1,38 +1,40 @@
---
title: 百度云RDS慢日志扫描
---
-本节介绍如何在SQLE平台监管百度云RDS实例上产生的慢SQL。
+当使用百度云RDS实例,并且想要监管实例上产生的慢SQL,可以通过创建一个百度云RDS慢日志扫描任务来实现。该任务将会定期扫描百度云RDS实例上的慢日志,并将扫描结果发送到SQLE中进行分析。
+
### 支持的数据源类型
* MySQL
-### 使用场景
-如果用户使用百度云RDS实例,并且想要监管实例上产生的慢SQL,可以通过创建一个百度云RDS慢日志扫描任务来实现。该任务将会定期扫描百度云RDS实例上的慢日志,并将扫描结果发送到SQLE中进行分析。
-
### 前置操作
* 用户需创建双机高可用版本的百度云RDS实例;
* 对该实例开通慢日志;
+* 已在平台添加对应数据源。
![baiduyunrds](img/baiduyunrds.png)
-### 操作步骤
-新建智能扫描任务
-* 任务名称:输入审核任务名称,必须以字母开头;
-* 数据源名称:指定扫描任务实施的数据源;
-* 数据库:填写需要审核的目标库,若不填则仅进行静态分析不会连库;
-* 数据库类型:根据选取的数据源呈现;
-* 任务类型:选择需要执行的审核任务类型,选择`百度云RDS MySQL慢日志`;
+### 步骤一 开启百度云慢日志扫描类型
+
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“百度云慢日志扫描”,并填写以下字段信息:
+
* 实例ID:填写百度云RDS实例的ID。
* Access Key:为账号安全认证中的Access Key,用于登录百度云RDS,需要与Secret Key一同使用。
* Access Secret Key:账号安全认证中Access Key对应的Secret Key。
* 启动任务时拉取慢日志时间范围(单位:小时,最大7天):扫描任务读取慢日志的时间范围,单位为小时,最大范围为7天。
* 审核过去时间段内抓取的SQL(分钟): 审核该时间段内抓取到的慢SQL。
* RDS Open API地址:RDS的地址前缀,用以调用RDS服务,需根据实例所在区域进行填写。如当前实例在华东-上海范围,则应填写rds.fsh.baidubce.com
+* 审核规则模板:选择对应的审核规则模板;
+
+
+以下为百度云RDS Open API地址参考:
![baiduyunrdsurl](img/baiduyunrdsurl.png)
-点击`提交`,完成扫描任务创建。
+点击`提交`,完成数据源上的百度云慢日志SQL扫描任务配置。
+
+
+### 步骤二 获取采集结果及审核结果
+在扫描详情中查看采集的百度云慢日志SQL信息及审核结果。
+
-### 执行结果
-* 用户进入扫描任务详情,可以查看扫描任务抓取到的慢SQL。
-* 点击`立即审核`,可查看对慢SQL的审核结果。
diff --git a/docs/user-manual/project/audit_task/huaweiyunrds.md b/docs/user-manual/project/audit_task/huaweiyunrds.md
index 19ec04bde..7af4121ee 100644
--- a/docs/user-manual/project/audit_task/huaweiyunrds.md
+++ b/docs/user-manual/project/audit_task/huaweiyunrds.md
@@ -2,44 +2,37 @@
title: 华为云RDS慢日志扫描
---
+当使用华为云RDS实例,并且希望监管实例上产生的慢SQL时,可以通过创建华为云RDS慢日志扫描任务实现。该任务会定期扫描华为云RDS实例上的慢日志,并将扫描结果发送到SQLE平台进行分析。
-本节介绍如何通过华为云SQLE平台监管华为云RDS实例上产生的慢SQL,并进行相应的分析和审核。
-## 支持的数据源类型
+### 支持的数据源类型
* MySQL
-## 使用场景
-
-如果用户正在使用华为云RDS实例,并且希望监管实例上产生的慢SQL,可以通过创建华为云RDS慢日志扫描任务实现。该任务会定期扫描华为云RDS实例上的慢日志,并将扫描结果发送到SQLE平台进行分析。
-
-## 前置操作
+### 前置操作
在进行以下操作之前,请确保已完成以下步骤:
* 创建华为云RDS实例,并获取实例的项目ID和实例ID。
* 开启慢日志明文显示,并设置慢查询时间阈值。参考[华为云用户手册](https://support.huaweicloud.com/usermanual-rds/rds_mysql_slow_query_log.html)。
* 获取访问密钥。访问密钥文件需要下载至本地查看。参考[华为云用户手册](https://support.huaweicloud.com/usermanual-ca/zh-cn_topic_0046606340.html)。
+* 在平台添加对应数据源。
+
+
+
+### 步骤一 开启华为云慢日志扫描类型
-## 操作步骤
-新建智能扫描任务
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“华为云慢日志扫描”,并填写以下字段信息:
-* 任务名称:输入审核任务名称,必须以字母开头;
-* 数据源名称:指定扫描任务实施的数据源;
-* 数据库:填写需要审核的目标库,若不填则仅进行静态分析不会连库;
-* 数据库类型:根据选取的数据源呈现;
-* 任务类型:选择需要执行的审核任务类型,选择`华为云RDS MySQL慢日志`;
* 项目ID:实例所在项目ID;
* 实例ID:实例ID;
* Access Key ID:在步骤3中获取的访问密钥 ID;
* Access Key Secret:在步骤3中获取的访问密钥Secret;
* 启动慢日志时拉取慢日志时间范围(小时):由于开启明文显示后,华为云平台会自动删除30天前的日志,所以时间范围上限是30天;
-* 当前API开放的地区:参考[华为云用户手册](https://developer.huaweicloud.com/endpoint?RDS);
+* 当前RDS实例所在实例:参考[华为云用户手册](https://developer.huaweicloud.com/endpoint?RDS);
+* 审核规则模板:选择对应的审核规则模板;
-点击`提交`,完成扫描任务创建。
+点击`提交`,完成数据源上的华为云慢日志SQL扫描任务配置。
-## 执行结果
-* 用户进入扫描任务详情,可以查看扫描任务抓取到的慢SQL。
-* 点击`立即审核`,可查看对慢SQL的审核结果。
-以下是华为云RDS慢日志扫描示意图:
-![huaweiyunrds](./img/huaweiyunrds.png)
\ No newline at end of file
+### 步骤二 获取采集结果及审核结果
+在扫描详情中查看采集的华为云慢日志SQL信息及审核结果。
\ No newline at end of file
diff --git a/docs/user-manual/project/audit_task/img/huaweiyunrds.png b/docs/user-manual/project/audit_task/img/huaweiyunrds.png
deleted file mode 100644
index 677203d0e..000000000
Binary files a/docs/user-manual/project/audit_task/img/huaweiyunrds.png and /dev/null differ
diff --git a/docs/user-manual/project/audit_task/img/metadata-list.png b/docs/user-manual/project/audit_task/img/metadata-list.png
index 275b5495e..4a5a62c3d 100644
Binary files a/docs/user-manual/project/audit_task/img/metadata-list.png and b/docs/user-manual/project/audit_task/img/metadata-list.png differ
diff --git a/docs/user-manual/project/audit_task/img/metadata-result.png b/docs/user-manual/project/audit_task/img/metadata-result.png
deleted file mode 100644
index db42fd082..000000000
Binary files a/docs/user-manual/project/audit_task/img/metadata-result.png and /dev/null differ
diff --git a/docs/user-manual/project/audit_task/img/processlist-audit.png b/docs/user-manual/project/audit_task/img/processlist-audit.png
index 2488d94d8..be1377453 100644
Binary files a/docs/user-manual/project/audit_task/img/processlist-audit.png and b/docs/user-manual/project/audit_task/img/processlist-audit.png differ
diff --git a/docs/user-manual/project/audit_task/img/slowlog-result.png b/docs/user-manual/project/audit_task/img/slowlog-result.png
deleted file mode 100644
index 8f96a8e26..000000000
Binary files a/docs/user-manual/project/audit_task/img/slowlog-result.png and /dev/null differ
diff --git a/docs/user-manual/project/audit_task/img/slowlog-result2.png b/docs/user-manual/project/audit_task/img/slowlog-result2.png
deleted file mode 100644
index 2f316fc74..000000000
Binary files a/docs/user-manual/project/audit_task/img/slowlog-result2.png and /dev/null differ
diff --git a/docs/user-manual/project/audit_task/img/slowlog_list.png b/docs/user-manual/project/audit_task/img/slowlog_list.png
new file mode 100644
index 000000000..d0d1bb4c7
Binary files /dev/null and b/docs/user-manual/project/audit_task/img/slowlog_list.png differ
diff --git a/docs/user-manual/project/audit_task/intro.md b/docs/user-manual/project/audit_task/intro.md
index ed1aa3ce0..f19ffd3dc 100644
--- a/docs/user-manual/project/audit_task/intro.md
+++ b/docs/user-manual/project/audit_task/intro.md
@@ -3,34 +3,22 @@ title: 功能说明
---
# 功能介绍
-### 背景
-在审核工单中我们介绍了如何通过 SQLE 进行 SQL 审核并上线的流程。审核工单管理,主要解决 SQL 上线的规范化流程化的问题,它能够帮助 DBA 自动化处理整个 SQL 上线过程中一些重复繁琐的工作。
-
-不过审核工单管理也有它的局限性。
-
-* 第一,通常工单中的审核是一次性操作。上线后,通常还会有业务 SQL访问数据库。这时可能会遇到一些执行效率较低的业务 SQL 造成数据库的性能问题,因而这类业务型SQL同样需要审核。
-* 第二,临近发版,如果这时审核出 SQL 存在一些问题,是否修复这些问题,可能会受到很多因素的影响(如 SQL 问题的影响面大小,项目发版的紧急程度等),因而需要对即将上线的SQL做全量扫描。
-
-因而,需要引入扫描任务,进行周期性的SQL审核,用以补充工单审核覆盖不到的场景。
-
-### SQLE扫描任务支持的采集模式
-#### 1.SQLE 自动抓取
-* 功能说明
- * 使用SQLE自动抓取,将由SQLE获取指定的SQL文件,传输至指定审核池后,由SQLE进行审核并展示审核结果。
-* 支持的任务类型
- * 库表元数据
- * TopSQL
- * processlist列表
-#### 2.Scanner 抓取
-* 功能说明
- * 使用Scanner抓取,可利用scanner插件获取指定的SQL文件,传输至指定审核池后,由SQLE进行审核并展示审核结果。
-* 支持的任务类型
- * 慢日志
- * Mybatis扫描
-#### 3.OpenAPI 推送
-* 功能说明
- * 使用应用程序SQL抓取,可利用api接口动态获取指定应用程序中的SQL,传输至指定审核池后,由SQLE进行审核并展示审核结果。
-* 支持的任务类型
- * openapi推送
- * 自定义
+
+
+我们通过SQLE工具实现了SQL审核与上线的标准化流程。这一流程不仅提升了数据库管理的效率,而且通过自动化手段减轻了数据库管理员(DBA)在SQL上线过程中处理重复性任务的负担。
+
+尽管审核工单在规范化SQL上线流程方面发挥了重要作用,但它也存在一些局限性:
+
+* 一次性审核的局限:审核工单通常只针对单次操作进行审核。然而,上线后的SQL可能在实际业务运行中遇到性能瓶颈,这要求对业务SQL进行持续的审核与优化。
+* 发版前的挑战:在临近版本发布时,如果发现SQL存在问题,决策过程可能会受到多种因素的制约,例如问题的影响范围和项目紧急程度。这要求我们在SQL上线前,针对测试环境针对数据库运行性能进行全面的扫描和审核。
+
+为了弥补审核工单管理的不足,我们还引入了周期性的SQL审核任务。这种持续的审核机制可以:
+
+* 补充审核盲区:覆盖工单审核未能触及的业务场景,确保SQL的持续优化和性能监控。
+* 提前发现问题:在SQL上线前进行全面扫描,以便及时发现并解决潜在的性能问题,减少上线后的风险。
+
+通过这种综合的审核策略,我们可以更有效地维护数据库的稳定性和正确性,同时提高SQL上线的质量和效率。
+
+此外,企业版用户还可以通过SQL管控功能,对采集到的SQL做集中统一的处理,追溯问题SQL的产生及后续解决方式,从而实现高效的SQL管理。
+
diff --git a/docs/user-manual/project/audit_task/java_agent_audit.md b/docs/user-manual/project/audit_task/java_agent_audit.md
index 1e2abe275..3a6661742 100644
--- a/docs/user-manual/project/audit_task/java_agent_audit.md
+++ b/docs/user-manual/project/audit_task/java_agent_audit.md
@@ -4,13 +4,7 @@ title: Java探针版应用程序SQL抓取【企业版】
本节介绍如何利用SQLE平台抓取java应用中的SQL,选取的例子是一个[开源的问卷调查java应用](https://gitee.com/surveyking/surveyking),架构简单,上手相对容易。
## 支持的数据源类型
-* MySQL
-* Oracle
-* DB2
-* OceanBase for MySQL
-* PostgreSQL
-* TiDB
-* SQL Server
+* All
## 前置准备
@@ -51,7 +45,10 @@ total 55652
## 使用方式
### 创建扫描任务
-进入智能扫描任务列表,点击新建,扫描任务类型选择应用程序SQL抓取。
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“应用程序SQL抓取”,并填写以下字段信息:
+* 审核规则模板:选择对应的审核规则模板;
+
+点击`提交`,完成数据源上的应用程序SQL抓取扫描任务配置。
### 启动Java应用
:::tip
diff --git a/docs/user-manual/project/audit_task/java_application_audit.md b/docs/user-manual/project/audit_task/java_application_audit.md
index 4267b284a..4515f0941 100644
--- a/docs/user-manual/project/audit_task/java_application_audit.md
+++ b/docs/user-manual/project/audit_task/java_application_audit.md
@@ -65,7 +65,10 @@ rm -rf jar/
## 使用方式
### 创建扫描任务
-进入智能扫描任务列表,点击新建,扫描任务类型选择应用程序SQL抓取。
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“应用程序SQL抓取”,并填写以下字段信息:
+* 审核规则模板:选择对应的审核规则模板;
+
+点击`提交`,完成数据源上的应用程序SQL抓取扫描任务配置。
### 启动Java应用
:::tip
diff --git a/docs/user-manual/project/audit_task/metadata_audit.md b/docs/user-manual/project/audit_task/metadata_audit.md
index 3b8ed3261..e23808c89 100644
--- a/docs/user-manual/project/audit_task/metadata_audit.md
+++ b/docs/user-manual/project/audit_task/metadata_audit.md
@@ -3,42 +3,34 @@ title: 库表元数据
---
# 库表元数据
-本节介绍库表元数据扫描的应用场景、以及如何创建库表元数据的扫描任务。
+
+当您需要检查已上线业务对应数据源的建表、建视图语句是否符合统一的SQL质量规范,或需要定期检查上线业务的库表变更是否符合统一的SQL质量规范时,您可以对数据源开启库表扫描,获得SQL与审核建议。
### 支持的数据源类型
* MySQL
* DB2
* TDSQL
+* PostgreSQL
-### 使用场景:
-
-1. 需要检查已上线业务对应数据源的建库建表语句是否符合 统一的SQL质量规范。
-2. 需要定期检查上线业务的库表变更是否符合 统一的SQL质量规范。
### 前置条件
已添加对应数据源。
-### 操作步骤
-1. 新建智能扫描任务
-* 任务名称:输入审核任务名称,必须以字母开头;
-* 数据源名称:指定扫描任务实施的数据源;
-* 数据库:填写需要审核的目标库,若不填则仅进行静态分析不会连库;
-* 数据库类型:根据选取的数据源呈现;
-* 任务类型:选择需要执行的审核任务类型,选择库表元数据;
-* 采集周期(分钟):将采集设定时间内产生的SQL;
+### 步骤一 开启库表扫描类型
+
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“库表扫描”,并填写以下字段信息:
+
+* 采集周期:指定SQLE每隔多久采一次SQL
* 是否采集视图信息:默认不采集视图信息,若开启,则将一并扫描数据源上的视图SQL;
-* 审核规则模板:如果未指定此项会优先使用数据源绑定的模板;
-* 任务审核周期:配置的是SQLE对审核任务进行自动审核的执行时间;
+* 审核规则模板:选择对应的审核规则模板;
-2. 进入扫描任务详情页,刷新,获得SQL采集结果
+点击`提交`,完成数据源上的库表SQL扫描任务配置。
-### 执行结果
-在扫描任务列表页面查看新建的库表元数据扫描任务。
-![list](img/metadata-list.png)
-在扫描任务详情中查看该扫描任务采集的SQL,及生成的扫描任务报告。
-![result](img/metadata-result.png)
+### 步骤二 获取采集结果及审核结果
+在扫描详情中查看采集的库表SQL信息及审核结果。
+![list](img/metadata-list.png)
### 后续步骤
* 查看审核记录,查看不同时间点的审核结果,包括审核的SQL语句、审核结果。
diff --git a/docs/user-manual/project/audit_task/processlist_audit.md b/docs/user-manual/project/audit_task/processlist_audit.md
index b84a09ec7..befa97037 100644
--- a/docs/user-manual/project/audit_task/processlist_audit.md
+++ b/docs/user-manual/project/audit_task/processlist_audit.md
@@ -1,29 +1,24 @@
---
title: 会话SQL扫描
---
-本节介绍如何对MySQL进行中的会话SQL进行监督及审核。
+当需要监控查询性能、识别瓶颈、以及诊断死锁或锁等待问题时,利用会话SQL智能扫描功能进行有效分析。
### 支持的数据源类型
* MySQL
-### 使用场景
-除了上线前和上线后的审核,在SQL语句执行过程中,用户往往也需要对其进行监控和审核,用以及时识别出潜在的问题SQL。然而,当前的审核场景往往无法覆盖事中这一环节的审核。为此,SQLE新增了processlist列表审核扫描任务,实现了事前、事中、事后的全覆盖,使得用户可以在SQL语句的整个生命周期内进行审核和管理,从而减少审核时间和工作量。
+### 步骤一 开启会话SQL扫描类型
-### 操作步骤
-新建智能扫描任务
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“会话SQL扫描”,并填写以下字段信息:
-* 任务名称:输入审核任务名称,必须以字母开头;
-* 数据源名称:指定扫描任务实施的数据源;
-* 数据库:填写需要审核的目标库,若不填则仅进行静态分析不会连库;
-* 数据库类型:根据选取的数据源呈现;
-* 任务类型:选择需要执行的审核任务类型,选择processlist列表扫描任务;
-* 采集周期(秒):表示SQLE对 MySQL processlist表的采集频率,SQLE将按照该时间间隔进行SQL采集。如果该值过低,会影响实例性能;
+* 采集周期:表示SQLE对 MySQL processlist表的采集频率,SQLE将按照该时间间隔进行SQL采集。如果该值过低,会影响实例性能;
* SQL最小执行时间(秒):表示SQLE对 MySQL processlist 的采集过滤条件,只有大于等于该时间的SQL才会被采集记录。如果为0,则表示不进行过滤;
-* 审核过去时间段内抓取的SQL(分钟):processlist列表扫描任务是增量审核,不在该时间段内执行的SQL将不会被再次采集;
-* 审核规则模板:如果未指定此项会优先使用数据源绑定的模板;
-* 任务审核周期:配置的是SQLE对审核任务进行自动审核的执行时间;
+* 审核规则模板:选择对应的审核规则模板;
-### 执行结果
-* 用户进入扫描任务详情,可以查看已采集到的processlist列表中的SQL信息;
-* 用户点击`立即审核`,可以在扫描任务报告中获取processlist列表中当前采集周期内产生的SQL及审核结果;
+点击`提交`,完成数据源上的会话SQL扫描任务配置。
+
+
+### 步骤二 获取采集结果及审核结果
+在扫描详情中查看采集的会话SQL信息及审核结果。
![processlist-audit](img/processlist-audit.png)
+
+
diff --git a/docs/user-manual/project/audit_task/slowlog_audit.md b/docs/user-manual/project/audit_task/slowlog_audit.md
index 959173fa3..e54689f51 100644
--- a/docs/user-manual/project/audit_task/slowlog_audit.md
+++ b/docs/user-manual/project/audit_task/slowlog_audit.md
@@ -3,107 +3,95 @@ title: 慢日志
---
# 慢日志
-本节介绍慢日志扫描的应用场景、以及如何创建慢日志扫描任务。
+当您需要检查已上线业务是否有超过指定时长的慢SQL产生时,可以为数据源开启慢日志智能扫描。
当前SQLE支持两种慢日志采集方式,一种由scanner采集慢日志文件中的慢查询,一种由SQLE直接采集慢查表中的慢查询,用户可在编辑页面选取需要的采集方式,您可选择需要的方式采集产生的慢查询。
## 支持的数据源类型
* MySQL
-## 使用场景
-需要检查已上线业务是否有超过指定时长的慢SQL产生。
+## 方式一:采集慢日志表
+### 前置条件
+* 已添加数据源
+* 在MySQL中设置以下内容:
+```
+set global long_query_time=1; // 需根据实际业务调整慢查询时间阈值,此处仅供参考
+set global slow_query_log=1; // 开启慢日志查询
+SET GLOBAL log_output='FILE,TABLE';// 开启 MySQL 的慢日志收集功能,并且确认将慢日志内容写入文件 mysql-slow.log 和表 mysql.slow_log
+```
+:::tip
+为了优化查询性能,使用这一采集方式时,需要用户手动运行下面的SQL,将mysql.slow_log表的引擎改为MyISAM,并添加索引。
+```
+ALTER TABLE mysql.slow_log ENGINE = MyISAM;
+ALTER TABLE mysql.slow_log ADD INDEX idx_start_time (start_time);
+```
+:::
-## 采集方式
-### 方式一:采集慢日志文件
+### 步骤一:开启慢日志智能扫描类型
-#### 前置条件
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“慢日志扫描”,并填写以下字段信息:
+
+* 采集来源:选择“从mysql.slow_log表采集”;
+* 审核规则模板:选择对应的审核规则模板;
+
+点击`提交`,完成数据源上的慢日志扫描任务配置。
+
+
+### 步骤二 获取采集结果及审核结果
+在扫描详情中查看从慢日志表中采集的SQL信息及审核结果。
+![list](img/slowlog_list.png)
+
+
+
+## 方式二:采集慢日志文件
+
+### 前置条件
* 已添加对应数据源;
-* 修改配置文件my.cnf,在文件中设置以下内容:
+* 修改配置文件my.cnf,在文件中添加以下内容:
```jsx title="my.cnf"
slow_query_log = ON //开启慢日志
slow_query_log_file = /var/lib/mysql/tmp_slow.log //设置慢日志文件路径
long_query_time = 1 //设置慢查询时间阈值,当前示例时间为1s,可根据实际业务变更
```
-#### 步骤一:新建智能扫描任务
+### 步骤一:开启慢日志智能扫描类型
-新建智能扫描任务,填写以下字段信息:
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“慢日志扫描”,并填写以下字段信息:
-* 任务名称:指定扫描任务的名称,当前仅支持英文名称;
-* 数据源名称:选择扫描任务对应的数据源;
-* 数据库:选择扫描任务使用的数据库;
-* 数据库类型:根据选取的数据源呈现;
-* 任务类型:选择慢日志;
-* 审核过去时间段内抓取的SQL(分钟):扫描的时间覆盖范围;
-* 采集来源:填写0,代表采集mysql-slow.log 文件;
+* 采集来源:选择“从slow.log文件采集”;
* 审核规则模板:选择对应的审核规则模板;
-* 审核任务周期:配置的是SQLE对审核任务进行自动审核的执行时间;
-
-点击`提交`,完成慢日志扫描任务创建。
-
-#### 步骤二:执行scannerd文件
-:::tip
-注意:scannerd文件通常在SQLE的bin目录下,需将scannerd文件放在数据源环境下执行。
-:::
-示例如下:
+点击`提交`,完成数据源上的慢日志扫描任务配置。
-```
-./scannerd slowquery -H "127.0.0.1" -P "10000" -N "slowlog_of_GRADE1" -J "default" -A eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcG4iOiJzbG93bG9nX29mX0dSQURFMSIsImV4cCI6MTcwODA3MjMzNSwibmFtZSI6ImFkbWluIn0.ArU5HpU7aSSVrRutxSAwRFYahSx0_4RNzD4KB6LTfpM --log-file /var/lib/mysql/mysql-for-test-slow.log
-```
+### 步骤二:执行scannerd文件
-参数解释如下:
-
-* -J, --project:说明扫描任务所在项目,例“default”;
-* -H, --host string:指定dms主机所在地址;
-* -N, --name string:指定扫描任务名称,scannerd会将获得的慢SQL传至指定的任务池中审核;
-* -P, --port string:指定SQLE所在端口;
-* -A, --token string:输入扫描任务凭证token;
-* --log-file:指定慢日志文件,scannerd从该文件中获取慢SQL;
+* 复制慢日志的连接信息
+* 在数据源环境中执行scannerd文件
+执行命令示例如下:
-### 方式二:采集慢日志表
-#### 前置条件
-* 已添加数据源
-* 在MySQL中设置以下内容:
```
-set global long_query_time=1; // 需根据实际业务调整慢查询时间阈值,此处仅供参考
-set global slow_query_log=1; // 开启慢日志查询
-SET GLOBAL log_output='FILE,TABLE';// 开启 MySQL 的慢日志收集功能,并且确认将慢日志内容写入文件 mysql-slow.log 和表 mysql.slow_log
-```
-:::tip
-为了优化查询性能,使用这一采集方式时,需要用户手动运行下面的SQL,将mysql.slow_log表的引擎改为MyISAM,并添加索引。
+./scannerd mysql_slow_log --project=default --host=127.0.0.1 --port=10000 --audit_plan_id=1 --token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcG4iOiJjNGNhNDIzOGEwYjkyMzgyMGRjYzUwOWE2Zjc1ODQ5YiIsImV4cCI6MTc1NDAzNjEyOCwiaXNzIjoiYWN0aW9udGVjaCBkbXMiLCJ1aWQiOiI3MDAyMDAifQ.gUE0fNLjAJAWXK7sPydEN8zQ96gStxa-luNTvBtIMWy --log-file /var/lib/mysql/mysql-for-test-slow.log
```
-ALTER TABLE mysql.slow_log ENGINE = MyISAM;
-ALTER TABLE mysql.slow_log ADD INDEX idx_start_time (start_time);
-```
-:::
-
-
-#### 新建智能扫描任务
-
-新建智能扫描任务,填写以下字段信息:
-* 任务名称:指定扫描任务的名称,当前仅支持英文名称;
-* 数据源名称:选择扫描任务对应的数据源核;
-* 数据库:选择扫描任务使用的数据库;
-* 数据库类型:根据选取的数据源呈现;
-* 任务类型:选择慢日志扫描任务;
-* 采集周期(分钟):SQLE进行采集的周期,若设置为10分钟,则SQLE将每隔10分钟去采集慢日志表中生成的慢查询;
-* 审核过去时间段内抓取的SQL(分钟):扫描的时间覆盖范围;
-* 采集来源:填写1,代表采集mysql.slow_log 表;
-* 审核规则模板:选择对应的审核规则模板;
-* 审核任务周期:配置的是SQLE对审核任务进行自动审核的执行时间;
+:::tip
+注意:scannerd文件通常在SQLE的bin目录下,需将scannerd文件放在数据源环境下执行。
+:::
-点击`提交`,完成慢日志扫描任务创建。
+参数解释如下:
+* --project:说明扫描任务所在项目,例“default”;
+* --host string:指定dms主机所在地址;
+* --port string:指定SQLE所在端口;
+* --token string:扫描任务凭证token;
+* --log-file:指定慢日志文件,scannerd从该文件中获取慢SQL;
-## 执行结果
-在扫描任务详情查看扫描的SQL语句及审核报告。
+### 步骤三 获取采集结果及审核结果
+在扫描详情中查看从慢日志文件中采集的SQL信息及审核结果。
## 后续步骤
-1. 分析扫描任务报告中出现的慢SQL:用户可以重点关注慢SQL的部分,这些SQL可能需要进行性能优化或数据库结构调整,以提升系统的响应速度。
+1. 分析智能扫描中出现的慢SQL:用户可以重点关注慢SQL的部分,这些SQL可能需要进行性能优化或数据库结构调整,以提升系统的响应速度。
2. 过滤不关心的SQL:用户可以通过在sqle.black_list_audit_plan_sqls表中添加需要过滤的SQL片段,实现对scanner扫描任务中不关心的SQL的过滤。这样,在SQLE的增量和全量接口中包含了指定关键字的SQL将被自动过滤掉,减少冗余的结果展示。
diff --git a/docs/user-manual/project/sqlmanage.md b/docs/user-manual/project/audit_task/sqlmanage.md
similarity index 77%
rename from docs/user-manual/project/sqlmanage.md
rename to docs/user-manual/project/audit_task/sqlmanage.md
index 742e75eda..4a9bcaf58 100644
--- a/docs/user-manual/project/sqlmanage.md
+++ b/docs/user-manual/project/audit_task/sqlmanage.md
@@ -1,21 +1,18 @@
---
-title: SQL管控
+title: SQL管控【企业版】
---
# SQL全生命周期管控
-SQL管控页面集中了用户在SQL审核和扫描任务中生成的SQL,方便进行集中的管理。用户可以快速发现审核出问题的SQL,并将其分配给其他成员处理,或将不关心的SQL设为忽略状态,从而实现高效的SQL管理。
+SQL管控页面集中了用户在SQL审核和扫描任务中生成的SQL,当用户的SQL来源多且分散时,可以在SQL管控页面快速发现审核出问题的SQL,并将其分配给其他成员处理,或将不关心的SQL设为忽略状态,以避免遗漏问题SQL,方便追溯问题SQL的产生及后续解决方式,从而实现高效的SQL管理。
-## 使用场景
-
-当用户的SQL来源多且分散时,需要将这些SQL集中到一个页面进行管理,以避免遗漏问题SQL,并方便追溯问题SQL的产生及后续解决方式
## 前置条件
用户需要登录平台并生成审核记录,满足以下条件之一:
* 在使用SQL快捷审核时,为SQL附加了审核标签。
-* 成功配置了扫描任务并生成了审核记录。
+* 在SQL管控配置中为数据源开启了智能扫描,并获得采集结果。
## 使用步骤
@@ -48,5 +45,5 @@ SQL管控页面集中了用户在SQL审核和扫描任务中生成的SQL,方
### 操作结果
通过以上步骤,用户可以使用SQL管控功能集中管理SQL,快速发现问题SQL并进行处理。
-![sqlmanage](img/sqlmanage.png)
+
diff --git a/docs/user-manual/project/audit_task/topsql.md b/docs/user-manual/project/audit_task/topsql.md
index 26a341abb..be85335f6 100644
--- a/docs/user-manual/project/audit_task/topsql.md
+++ b/docs/user-manual/project/audit_task/topsql.md
@@ -1,9 +1,37 @@
---
title: TopSQL
---
-本节介绍如何
+
+TOP SQL 语句可能会导致数据库性能下降。为此,我们提供了TOP SQL智能扫描,用以实时监控SQL性能,通过自动监察数据库中最耗费资源的 SQL 语句,减少手动分析的同时,快速定位性能瓶颈,以此提高数据库运行性能。
### 支持的数据源类型
* DB2
* Oracle
-* OceanBase for MySQL
\ No newline at end of file
+* OceanBase for MySQL
+* ceanBase for Oracle
+* PostgreSQL
+* 达梦
+
+### 步骤一 开启TopSQL扫描类型
+
+在SQL管控配置中为数据源开启智能扫描,扫描类型选择“TopSQL”,并填写以下字段信息:
+
+* 采集周期:表示SQLE对TopSQL的采集频率,SQLE将按照该时间间隔进行SQL采集。如果该值过低,会影响实例性能;
+* 排序字段:目前可基于总执行次数、执行时间、物理读块数、逻辑读块数、I/O等待时间进行排序
+* Top N:选择需要展示的SQL数量
+* 审核规则模板:选择对应的审核规则模板;
+
+点击`提交`,完成数据源上的TopSQL扫描任务配置。
+
+### 步骤二 获取采集结果及审核结果
+在扫描详情中查看采集的TopSQL信息及审核结果。
+
+
+:::tip
+对PG类型的数据源开启TOPSQ智能扫描时,PG需要保证两个前提:
+* 确保pg_stat_statements扩展已安装,参考SQL语句`CREATE EXTENSION pg_stat_statemnts;`
+* 将参数shared_preload_libraries的值设置为 pg_stat_statements来指定在启动时加载pg_stat_statements扩展
+```
+docker run --name': docker run --name postgres -e POSTGRES_PASSWORD=123456 -d -p 5432:5432 -v /my/local/dir:/var/lib/postgresql/data postgres:13 -c shared_preload_libraries=pg_stat_statements
+```
+:::
diff --git a/sidebars.js b/sidebars.js
index 96517ba5f..3cb4cca3b 100644
--- a/sidebars.js
+++ b/sidebars.js
@@ -45,62 +45,55 @@ const sidebars = {
items: [
{
type: 'category',
- label: '项目',
+ label: '项目配置',
items: [
"user-manual/project/intro",
"user-manual/project/project_create",
"user-manual/project/instance-manager",
- "user-manual/project/instance_syn",
"user-manual/project/group_member",
"user-manual/project/rule-template-manager",
"user-manual/project/workflow-template-manager",
"user-manual/project/whitelist-manager",
"user-manual/project/operation_records",
- "user-manual/project/sqlmanage",
+ ],
+ },
+ {
+ type: 'category',
+ label: 'SQL开发',
+ items: [
"user-manual/project/dataexport",
"user-manual/project/quick_audit",
"user-manual/project/IDEaudit",
- {
- type: 'category',
- label: '工单',
- items: [
- "user-manual/project/workflow/intro",
- "user-manual/project/workflow/create-workflow",
- "user-manual/project/workflow/audit-workflow",
- "user-manual/project/workflow/exec-workflow",
- ],
- },
- {
- type: 'category',
- label: '扫描任务',
- items: [
- "user-manual/project/audit_task/intro",
- "user-manual/project/audit_task/metadata_audit",
- "user-manual/project/audit_task/slowlog_audit",
- "user-manual/project/audit_task/processlist_audit",
- "user-manual/project/audit_task/baiduyunrds",
- "user-manual/project/audit_task/huaweiyunrds",
- "user-manual/project/audit_task/mybatis",
- "user-manual/project/audit_task/SQLfile_audit",
- "user-manual/project/audit_task/java_application_audit",
- "user-manual/project/audit_task/java_agent_audit",
- ],
- }
+ "user-manual/project/audit_task/mybatis",
+ "user-manual/project/audit_task/SQLfile_audit",
],
},
{
type: 'category',
- label: '系统设置',
+ label: 'SQL上线',
items: [
- "user-manual/sys-configuration/intro",
- "user-manual/sys-configuration/login_syn",
- "user-manual/sys-configuration/message_syn",
- "user-manual/sys-configuration/process_syn",
- "user-manual/sys-configuration/webhook",
- "user-manual/sys-configuration/configuration",
- "user-manual/sys-configuration/customize",
+ "user-manual/project/workflow/intro",
+ "user-manual/project/workflow/create-workflow",
+ "user-manual/project/workflow/audit-workflow",
+ "user-manual/project/workflow/exec-workflow",
],
- },
+ },
+ {
+ type: 'category',
+ label: 'SQL管控',
+ items: [
+ "user-manual/project/audit_task/intro",
+ "user-manual/project/audit_task/sqlmanage",
+ "user-manual/project/audit_task/metadata_audit",
+ "user-manual/project/audit_task/slowlog_audit",
+ "user-manual/project/audit_task/processlist_audit",
+ "user-manual/project/audit_task/topsql",
+ "user-manual/project/audit_task/baiduyunrds",
+ "user-manual/project/audit_task/huaweiyunrds",
+ "user-manual/project/audit_task/java_application_audit",
+ "user-manual/project/audit_task/java_agent_audit",
+ ],
+ },
{
type: 'category',
label: 'SQL工作台',
@@ -110,6 +103,19 @@ const sidebars = {
"user-manual/sql-workbench/how-to-use",
],
},
+ {
+ type: 'category',
+ label: '系统设置',
+ items: [
+ "user-manual/sys-configuration/intro",
+ "user-manual/sys-configuration/login_syn",
+ "user-manual/sys-configuration/message_syn",
+ "user-manual/sys-configuration/process_syn",
+ "user-manual/sys-configuration/webhook",
+ "user-manual/sys-configuration/configuration",
+ "user-manual/sys-configuration/customize",
+ ],
+ },
{
type: 'category',
label: '用户管理',
@@ -122,6 +128,8 @@ const sidebars = {
},
"user-manual/customrule",
"user-manual/knowledgebase",
+ "user-manual/allinstance",
+ "user-manual/project/instance_syn",
],
},
{