# BIC-QA **Repository Path**: BIC-QA/bic-qa ## Basic Information - **Project Name**: BIC-QA - **Description**: BIC-QA是一个数据库知识智能问答系统,API服务器将为用户提供免费的知识检索服务,安装插件后,可以使用简单的对话界面向知识问答服务提问,API服务将会根据你的问题返回检索结果,再由大模型进行加工输出最终结果。对大模型规模要求极低,使用本地显卡部署的QWEN3:8B即可得到比较完美的效果 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 50 - **Forks**: 7 - **Created**: 2025-08-15 - **Last Updated**: 2026-03-18 ## Categories & Tags **Categories**: rag **Tags**: None ## README # BIC-QA 智能问答助手
> 💡 **提示**:脚本采集器是数据库 AI 巡检流程的数据采集环节,自动化执行并返回一系列关键的巡检指标原始数据(如空间使用率、关键参数、等待事件统计等),为运维人员或上层分析平台提供统一、规范的初始数据集。
##### 3. 新建诊断任务
在 **"新建诊断"** 标签页中,按以下步骤操作:
**步骤 1:选择数据库类型(必填)**
- 在 **"数据库类型"** 下拉菜单中选择目标数据库类型
- 支持 Oracle、KingBase 等数据库
**步骤 2:上传采集数据(必填)**
- 点击 **"上传文件"** 按钮
- 选择脚本采集器生成的数据包文件
- ⚠️ **重要提示**:仅支持上传客户端采集的数据包,否则将导致分析失败
**步骤 3:填写接收邮箱(必填)**
- 在 **"接收邮箱"** 输入框中,填写您的邮箱地址
- 分析完成后,系统会将巡检报告发送到此邮箱
**步骤 4:选择分析语言**
- 在 **"语言"** 下拉菜单中选择分析报告的语言
- 可选:**中文(Chinese)** 或 **English**
**步骤 5:提交诊断**
- 阅读并同意免责声明和安全声明
- 点击 **"提交诊断"** 按钮提交诊断任务
- 系统将开始处理您的巡检数据
##### 4. 查看历史记录
在 **"历史记录"** 标签页中,您可以:
- 查看所有已提交的巡检诊断任务记录
- 按时间范围、任务状态筛选历史记录
- 下载历史巡检报告
#### 💡 使用建议
1. **定期巡检**:建议定期执行数据库巡检,及时发现潜在问题
2. **数据完整性**:确保使用脚本采集器采集完整的数据,避免数据缺失影响分析结果
3. **敏感信息处理**:如数据包含敏感信息,建议先进行脱敏处理
4. **检查邮箱地址**:确保邮箱地址正确,以便及时收到巡检报告
### ⚡ SQL 优化分析功能
BIC-QA 提供了专业的 SQL 优化分析功能,支持 KingBase 数据库的 SQL 语句优化,帮助开发人员和数据库管理员提升 SQL 执行效率。
#### 🎯 功能概述
SQL 优化分析功能可以:
- **智能分析**:基于 AI 大模型分析 SQL 语句的执行计划和性能瓶颈
- **优化建议**:提供针对性的 SQL 优化建议和改写方案
- **专业报告**:生成详细的优化分析报告,包含优化前后对比
- **多语言支持**:支持中文和英文分析报告
- **历史管理**:查看和管理历史优化记录
#### 📝 使用步骤
##### 1. 打开 SQL 优化功能
1. 在左侧导航栏中,点击 **"SQL优化"** 按钮
2. 系统将打开 SQL 优化对话框
##### 2. 下载脚本采集器
1. 在 **"新建优化"** 标签页中,选择数据库类型(当前支持 KingBase)
2. 点击 **"下载脚本采集器链接"** ,到仓库中选择对应版本的采集器
3. 使用脚本采集器收集 SQL 执行相关数据
##### 3. 新建优化任务
在 **"新建优化"** 标签页中,按以下步骤操作:
**步骤 1:选择数据库类型(必填)**
- 在 **"数据库类型"** 下拉菜单中选择 KingBase
**步骤 2:上传 SQL 数据文件(必填)**
- 点击 **"上传文件"** 按钮
- 选择包含 SQL 语句的数据文件
- ⚠️ **重要提示**:仅支持上传客户端采集的数据包,否则将导致分析失败
**步骤 3:填写接收邮箱(必填)**
- 在 **"接收邮箱"** 输入框中,填写您的邮箱地址
- 分析完成后,系统会将优化报告发送到此邮箱
**步骤 4:选择分析语言**
- 在 **"语言"** 下拉菜单中选择分析报告的语言
- 可选:**中文(Chinese)** 或 **English**
**步骤 5:提交优化**
- 阅读并同意免责声明和安全声明
- 点击 **"提交优化"** 按钮提交优化任务
- 系统将开始处理您的 SQL 数据
##### 4. 查看历史记录
在 **"历史记录"** 标签页中,您可以:
- 查看所有已提交的 SQL 优化任务记录
- 按时间范围、任务状态筛选历史记录
- 下载历史优化报告
- 重新提交优化任务
#### 💡 使用建议
1. **SQL 完整性**:确保上传的 SQL 数据文件包含完整的执行上下文信息
2. **敏感信息处理**:如 SQL 包含敏感表名、字段名等信息,建议先进行脱敏处理
3. **定期优化**:对于性能关键的 SQL 语句,建议定期进行优化分析
### 🔐 KWR/AWR 报告 SQL 数据脱敏
BIC-QA 提供了 KWR/AWR 报告 SQL 数据脱敏功能,帮助用户在提交报告进行 AI 分析前,对报告中的敏感 SQL 信息进行脱敏处理,有效保护敏感数据安全。
#### 🎯 功能概述
数据脱敏功能可以:
- **智能脱敏**:自动识别并脱敏 AWR/KWR 报告中的敏感 SQL 信息
- **安全保障**:有效保护数据库表名、字段名、具体数值等敏感信息
- **易于使用**:提供便捷的脱敏工具,支持命令行操作
- **多数据库支持**:支持 Oracle AWR 报告和 KingBase KWR 报告
#### 📝 使用步骤
##### 1. 下载脱敏工具
1. 打开 **"AWR分析"** 功能对话框
2. 在 **"新建分析"** 标签页中,选择数据库类型:
- 选择 **Oracle** 时,显示 "AWR脱敏脚本下载地址"
- 选择 **KingBase** 时,显示 "KWR脱敏脚本下载地址"
3. 点击下载链接,从 Gitee 或 GitHub 下载对应的脱敏工具
##### 2. 部署脱敏工具
1. 将脱敏工具上传到 Linux 服务器
2. 赋予可执行权限:
```bash
chmod a+x awr_desensitize
```
##### 3. 执行脱敏操作
运行脱敏工具处理 AWR/KWR 报告:
```bash
./awr_desensitize -f awrrpt.html
```
> 💡 **提示**:脱敏后的报告文件会在当前目录生成,文件名通常为原文件名加上脱敏标识。
##### 4. 上传脱敏报告
使用脱敏后的报告文件进行 AWR/KWR 分析,确保敏感信息已得到有效保护。
#### 💡 使用建议
1. **安全优先**:对于包含敏感数据的报告,强烈建议使用脱敏工具处理后再提交分析
2. **脱敏范围**:脱敏工具会处理报告中的 SQL 文本,包括表名、字段名、具体数值等敏感信息
3. **备份原始文件**:建议保留原始报告文件的备份,以便需要时进行对比
4. **验证脱敏效果**:脱敏后建议检查报告内容,确保敏感信息已被正确脱敏
> ⚠️ **重要提示**:使用脱敏工具处理 AWR/KWR 报告中的 SQL 文本,可有效保护敏感信息。处理后进行 AI 分析将更具安全性。如需安全保障,建议下载并使用该脱敏工具。
## 🛠️ 故障排除
### ❗ 常见问题
#### 1. 插件导入失败
**可能原因**:
- 解压出现文件损坏
- 浏览器选择插件时候没有选最后一层文件
**解决方案**:
- 选择的文件夹下有manifest.json,如下所示:
#### 2. 请求失败
**可能原因**:
- 模型服务地址错误
- 网络连接问题
- API Key 无效
- 本地模型权限未放行
**解决方案**:
```bash
# 检查服务地址
curl http://localhost:11434/v1/models
# 验证网络连接
ping your-api-endpoint.com
# 配置本地环境变量
系统变量设置OLLAMA_ORIGINS值为*
```
#### 3. 模型无法加载
**可能原因**:
- Ollama 服务未启动
- API 地址格式错误
- 模型未正确部署
**解决方案**:
```bash
# 启动 Ollama 服务
ollama serve
# 检查模型列表
ollama list
```
#### 4. 知识库连接失败
**可能原因**:
- 知识库服务 URL 错误
- API Key 过期或无效
- 网络权限限制
**解决方案**:
- 检查知识库服务状态
- 重新获取 API Key
- 验证网络访问权限
#### 5.连接测试失败,请检查网络和URL
**可能原因**:
- 本地网络无法连接外网
- 本机开启代理
- 网络安全限制
**解决方案**:
- 使用电脑管家之类的软件检测网络是否正常
- 手动检查是否开启代理

### 🔍 调试步骤
1. **重新加载扩展**
- 打开扩展管理页面
- 点击重新加载按钮

2. **清除缓存**
- 清除浏览器缓存和 Cookie
- 重启浏览器
3. **检查控制台**
- 按 F12 打开开发者工具
- 查看 Console 错误信息
4. **验证配置**
- 检查配置文件格式
- 确认所有必填字段
## 📱 系统要求
### 🌐 浏览器支持
- **Chrome** 88+
- **Edge** 88+
- **其他基于 Chromium 的浏览器**
### 🌍 网络要求
- 支持 HTTPS/HTTP 请求
- 稳定的网络连接
- 防火墙允许扩展访问
## 🔒 隐私安全
### 🛡️ 数据保护
- **本地存储**:对话历史存储在本地
- **加密传输**:所有网络请求使用 HTTPS
- **权限控制**:最小化权限要求
### 🔐 安全特性
- **本地模型**:支持完全本地部署
- **API 密钥**:安全存储和传输
- **访问控制**:可配置网络访问权限
### 📋 隐私政策
- 不收集个人敏感信息
- 不向第三方分享数据
- 支持数据导出和删除
## 📞 技术支持
### 📧 联系方式
- **售后邮箱**:support@dbaiops.com
- **DBAIOps社区:**
- **Gitee**:[提交 Issue](https://gitee.com/BIC-QA/BIC-QA/issues)
### 🔄 更新日志
- **v1.1.1**:新增 Oracle 数据库巡检分析、KingBase 数据库 SQL 优化分析、KingBase 数据库巡检分析、KWR/AWR 报告 SQL 数据脱敏功能
- **v1.0.8.2**:新增多语言支持,修复已知BUG
- **v1.0.7**:新增 AWR 报告分析功能,支持 Oracle 数据库性能诊断
- **v1.0.6**:支持添加大模型服务商,修复已知问题
- **v1.0.5**:优化性能,修复已知问题
- **v1.0.4**:新增知识库功能
- **v1.0.3**:支持本地 Ollama 模型
---