fastdbchkrep项目(数据库自动生成巡检报告) open source

fastdbchkrep 起源于我不想整理巡检报告的惰性需求,特意弄的一个工具。

经历了3个多月的功能开发和展示优化,目前已经满足了我的需求。

感兴趣的同学们也来一起尝试下。

github:https://github.com/iop07695432/fastdbchkrep



FastDBCheckRep

数据库巡检报告生成工具 - 让 DBA 专注于数据库分析而非报告格式化

📖 项目概述

核心定位

FastDBCheckRep 是一款数据库巡检和报告生成的工具包,旨在为数据库管理员(DBA)提供自动化、专业化的数据库健康检查和报告生成服务。

解决的问题

在企业级数据库管理领域,传统的数据库巡检工作面临以下挑战:

  • 数据收集复杂性:需要从多个系统层面(操作系统、数据库实例、存储等)收集大量指标数据
  • 报告格式化耗时:DBA 需要花费大量时间将技术数据转换为业务可读的专业报告
  • 一致性难以保证:手工报告容易出现格式不统一、遗漏关键信息等问题
  • 可视化要求提升:现代企业对数据可视化和图表展示的要求越来越高

核心理念

让 DBA 专注于数据库分析而非报告格式化

  • 自动化数据收集 → 解析 → 报告生成 → PDF 导出全流程
  • 标准化、专业化的报告输出,便于项目交付验收
  • 高质量的图表和可视化输出

目标用户

  • 数据库管理员(DBA)
  • 运维工程师
  • 技术咨询公司
  • 需要定期生成数据库巡检报告的企业

目标用户

  • 数据库管理员(DBA)
  • 运维工程师
  • 技术咨询公司
  • 需要定期生成数据库巡检报告的企业

✨ 功能特性

已完整实现的功能

Oracle 数据库支持(✅ 完整实现)

  • 单机模式(ONE):支持 Oracle 11g、12c、19c 非多租户版本
  • RAC 模式:支持 2-4 节点 Oracle RAC 集群
    • 自动合并多节点报告
    • 图片路径自动重写
    • 节点一致性验证
  • AWR 报告处理:高保真 HTML 截图(支持按 summary 文本灵活匹配截取 AWR 各章节)
  • 性能监控图表:CPU、内存、磁盘 I/O 趋势图(Matplotlib 生成)

MySQL 数据库支持(✅ 完整实现)

  • 单机模式(ONE):完整的 MySQL 巡检数据解析
  • 独立解析器:专用的 MySQL 元数据解析器

SQL Server 数据库支持(🚧 部分实现)

  • 版本支持:2005、2008、2012、2014、2016、2017、2019
  • 直接 TXT 解析:跳过 JSON 中间层,简化流程
  • 智能版本检测:通过版本字符串和提示语双重判断
  • 当前状态:解析器和报告生成器已实现,持续优化中

技术亮点

🎨 AWR HTML 截图解决方案(里程碑级创新)

  • 高保真截图:使用 Playwright 实现 AWR 报告的高质量截图
  • 自动化处理:无需手工截图和裁剪
  • 图片压缩优化:Pillow 压缩至 <200KB
  • 技术价值:将 AWR 报告处理时间从小时级降低到分钟级

📊 性能监控图表生成

  • CPU 使用率趋势图:user/system/iowait/idle 多维度展示
  • 内存使用率图表:双 Y 轴(百分比 + GB)
  • 磁盘 I/O 趋势图:读写性能可视化
  • 高质量输出:300 DPI,适合打印和展示

🔄 RAC 多节点支持

  • 支持 2-4 节点(不仅限于 2 节点)
  • 自动合并节点报告
  • 图片路径自动重写
  • 节点一致性验证

📦 二进制分发支持

  • PyInstaller 打包,无需 Python 环境即可运行
  • Playwright 浏览器可打包到二进制中
  • 适合客户现场部署
相关推荐
·云扬·12 小时前
MySQL主从数据一致性校验工具:pt-table-checksum 详解
数据库·sql·mysql
那我掉的头发算什么13 小时前
【数据库】事务
数据库·sql·mysql·github·数据库开发
wudl556613 小时前
Flink SQL连接Kafka及数据去重操作
sql·flink·kafka
~kiss~16 小时前
spark-SQL学习
sql·学习·spark
GottdesKrieges17 小时前
OceanBase集群诊断工具:obdiag
数据库·sql·oceanbase
少年攻城狮18 小时前
OceanBase系列---【如何把一个表改造成分区表?】
数据库·sql·oceanbase
不剪发的Tony老师19 小时前
SQL Studio:一个基于浏览器的数据库查询工具
数据库·sql
泷羽Sec-静安19 小时前
Less-7 GET-Dump into outfile-String
android·前端·网络·sql·安全·web安全