小麦苗多数据库AI分析巡检Word报告生成工具

前言
近10年间,麦老师使用纯SQL脚本陆续编写了各种数据库的巡检脚本,可以直接生成html格式的报告,参考:https://dbhealthcheck.dbaup.com/
2025年花费将近半年时间,使用Python脚本编写了一个工具,可以一键直接生成word格式的报告,参考:https://www.dbaup.com/xiaomaimiaoshujukuxunjianshengchengwordgongjushuoming.html
随着AI的爆火,巡检脚本也接入了AI功能,2025年年底和2026年年初做了AI升级,接入了AI分析功能,能够对巡检结果进行智能解读,这里非常感谢一个网友的引路。
AI版主要修改地方:
1、界面修改
-
历史库有保留功能,避免每次都输入 -
数据库连接支持导出导入 -
数据库连接支持搜索、排序等功能 -
支持连接测试功能 -
接入AI功能,界面手动配置AI -
其它…
2、生成word后,可以选择对生成的word做AI分析,生成巡检报告和对巡检报告做AI分析的功能是解耦的,做AI分析需要联网
工具简介
该工具为绿色版,解压可直接使用,目前支持Oracle、MySQL、SQL Server、PostgreSQL、GreenPlum、达梦、人大金仓、操作系统的巡检,后续还会增加其它数据库种类,主界面截图如下:

新建和编辑界面:

AI分析配置界面:

Oracle说明
需要注意的是:
1、若用户名是sys,则后台会自动以sysdba角色运行,其它用户以普通用户运行脚本。
2、服务名:这里尤其注意,不是实例名,而是服务名。目前仅支持服务名这种连接方式。
最终的word报告示例:


MySQL说明
最终的word报告示例:


SQL Server说明
最终的word报告示例:



PostgreSQL说明
最终巡检word结果示例:


GreenPlum说明
最终的word报告示例:


人大金仓说明
最终的word报告示例:


达梦说明
最终的word报告示例:


操作系统说明
最终的word报告示例:

启动巡检步骤
Windows系统
在Windows上,有GUI图形界面,解压包后,直接双击 start.bat 即可。
Linux系统
在Linux上,无GUI图形界面,只有命令行模式,依然使用最初的版本,AI版本不支持Linux系统,解压包后,运行start.sh即可:
1unzip dbchecktoword.zip 2cd dbchecktoword3sh start.sh
示例:
1[root@dbaup dbchecktoword]# sh start.sh 2请输入连接信息: 3types [默认: Oracle, 支持: Oracle、MySQL、SQL Server、PostgreSQL、GreenPlum、达梦、人大金仓、操作系统]: pg 4host [默认: 127.0.0.1]: 192.168.8.8 5port [默认: 5432]: 54331 6user [默认: postgres]: 7password : 8database [默认: postgres]: 9project XXX项目(可选): pg18 10 11已生成 db.conf 文件,内容如下: 12[database] 13host = 192.168.8.8 14port = 54331 15database = postgres 16user = postgres 17password = *** 18dbtypes = PostgreSQL 19project = pg18 20 21 22[2025-09-29 12:09:12] 开始执行 db_check_doc.py ... 23项目名: pg18 24类型: PostgreSQL 25读取配置文件... 26本次巡检使用的Markdown文件为: ./pg_sql.md 27连接 postgresql 数据库中... 28数据库连接成功!!! 29创建Word文档... 30 31[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > PostgreSQL基本信息 32 33[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 数据库基本信息(数据库大小) 34 35[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 数据库基本信息(数据库大小) > 所有表空间 36 37[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 库的前10张大表 38 39[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 库的schema大小 40 41[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 数据库对象统计 42 43[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 所有语言 44 45[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 所有可用插件 > 所有插件(已编译) 46 47[2025-09-29 12:09:12] 执行检查: 数据库总体概况 > 所有可用插件 > 已安装的插件 48 49[2025-09-29 12:09:12] 执行检查: 会话和锁情况 > 所有会话和进程 > 总计 50 51[2025-09-29 12:09:12] 执行检查: 会话和锁情况 > 所有会话和进程 > 当前用户统计 52 53[2025-09-29 12:09:12] 执行检查: 会话和锁情况 > 所有会话和进程 > 状态统计 54 55[2025-09-29 12:09:12] 执行检查: 会话和锁情况 > 所有会话和进程 > 当前活动会话详情(只取前20) 56 57[2025-09-29 12:09:12] 执行检查: 会话和锁情况 > 空闲会话时长 > 统计 58 59[2025-09-29 12:09:12] 执行检查: 会话和锁情况 > 空闲会话时长 > 详情列表 60 61[2025-09-29 12:09:12] 执行检查: 会话和锁情况 > 锁详情 62 63[2025-09-29 12:09:12] 执行检查: SQL情况 > 总执行时间最长的SQL 64 65[2025-09-29 12:09:12] 执行检查: SQL情况 > 最耗IO的SQL 66 67[2025-09-29 12:09:12] 执行检查: SQL情况 > 最耗共享内存 SQL 68 69[2025-09-29 12:09:12] 执行检查: 索引 > 从未使用过的索引统计 70 71[2025-09-29 12:09:12] 执行检查: 索引 > 占用空间最大的几个索引 72 73[2025-09-29 12:09:12] 执行检查: 索引 > 缺失主键索引的表 74 75[2025-09-29 12:09:12] 执行检查: 数据库性能 > 基本参数 > 基本参数 76 77[2025-09-29 12:09:12] 执行检查: 数据库性能 > 基本参数 > 哪些参数被修改过 78 79[2025-09-29 12:09:12] 执行检查: 数据库性能 > 基本参数 > pg_hba.conf配置文件信息(PG10) 80 81[2025-09-29 12:09:12] 执行检查: 数据库性能 > 基本参数 > 参数文件记录的参数 82 83[2025-09-29 12:09:12] 执行检查: 数据库性能 > 基本参数 > 获取已安装的PostgreSQL的信息 84 85[2025-09-29 12:09:12] 执行检查: 数据库性能 > 基本参数 > 用户认证方式(PG16) 86 87[2025-09-29 12:09:12] 执行检查: 数据库性能 > 所有库表膨胀信息 88 89[2025-09-29 12:09:12] 执行检查: 数据库性能 > 所有库表膨胀信息 > 按数据库汇总统计膨胀的表 90 91[2025-09-29 12:09:12] 执行检查: 数据库性能 > 所有库缺失统计信息的表(只列举100条) 92 93[2025-09-29 12:09:12] 执行检查: 数据库性能 > 所有库缺失统计信息的表(只列举100条) > 按数据库汇总统计缺失统计信息的表 94 95[2025-09-29 12:09:12] 执行检查: 数据库性能 > 缓存命中率和事务提交率 96 97[2025-09-29 12:09:12] 执行检查: 数据库性能 > WAL日志切换频率(可能需要手工指定归档日志的位置) 98 99[2025-09-29 12:09:12] 执行检查: 数据库性能 > 用户100101[2025-09-29 12:09:12] 执行检查: 高可用情况 > 主从流复制情况 > 主库查看wal日志发送状态102103[2025-09-29 12:09:12] 执行检查: 高可用情况 > 主从流复制情况 > 从库查看wal日志接收状态104105[2025-09-29 12:09:12] 执行检查: 高可用情况 > 主从流复制情况 > 主从库延迟数据(单位MB)106107[2025-09-29 12:09:12] 执行检查: 高可用情况 > 主从流复制情况 > 主从流复制冲突统计108109[2025-09-29 12:09:12] 执行检查: 高可用情况 > 逻辑复制 > 查看发布110111[2025-09-29 12:09:12] 执行检查: 高可用情况 > 逻辑复制 > 查看发布的表112113[2025-09-29 12:09:12] 执行检查: 高可用情况 > 逻辑复制 > 查看所有的订阅者114115[2025-09-29 12:09:12] 执行检查: 高可用情况 > 逻辑复制 > 复制进度116117[2025-09-29 12:09:12] 执行检查: 高可用情况 > 逻辑复制 > 查看订阅118119[2025-09-29 12:09:12] 执行检查: 高可用情况 > 逻辑复制 > 查看订阅的表120121[2025-09-29 12:09:12] 执行检查: 高可用情况 > 逻辑复制 > 查看复制槽122123[2025-09-29 12:09:12] 执行检查: 数据库统计 > 后台写进程统计信息124125[2025-09-29 12:09:12] 执行检查: 数据库统计 > wal日志统计(PG14)126127[2025-09-29 12:09:12] 执行检查: 数据库统计 > 统计软硬解析次数128129[2025-09-29 12:09:12] 执行检查: 数据库统计 > 数据库统计详情(含坏块等)130131[2025-09-29 12:09:12] 执行检查: 数据库统计 > 数据库IO详情(PG16新增)132133[2025-09-29 12:09:12] 执行检查: 数据库统计 > 复制槽活动信息(pg14)134135[2025-09-29 12:09:12] 执行检查: 数据库统计 > copy进度(pg14)136137[2025-09-29 12:09:12] 执行检查: 数据库统计 > 显示访问cached pages的统计信息(PG 13)138139[2025-09-29 12:09:12] 执行检查: 数据库统计 > 查看share buffer的使用情况(PG13)140141[2025-09-29 12:09:12] 执行检查: 数据库统计 > 查询备份进度(PG13)142143[2025-09-29 12:09:12] 执行检查: 数据库统计 > 查询analyze的进度(PG13)144145[2025-09-2912:09:12] 执行检查: 数据库统计 > 新建或重建索引的过程跟踪、进度显示(PG12)146147[2025-09-2912:09:12] 执行检查: 数据库统计 > cluster的各个阶段(PG12)148149[2025-09-2912:09:12] 执行检查: 数据库统计 > vacuum的各个阶段150151[2025-09-2912:09:12] 执行检查: 数据库统计 > 查看当前会话的内存上下文使用情况(PG14)152153[2025-09-2912:09:13] 执行检查: 数据库统计 > 查看扩展统计信息定义(PG12)154155[2025-09-2912:09:13] 执行检查: 数据库统计 > 查看扩展统计信息详情(PG12)156157[2025-09-2912:09:13] 执行检查: 数据库统计 > 查看扩展统计信息对象中包含的表达式信息(PG14)158159[2025-09-2912:09:13] 执行检查: 巡检报告结果160161巡检报告已生成: /soft/dbchecktoword/reports/PostgreSQL巡检_pg18_20250929_120913.docx162163注意:请在打开 Word 后在目录处按 F9 更新目录!!!164连接已关闭165[2025-09-2912:09:14] 执行完成166总耗时:0小时 0分钟 2秒!
word报告文件的位置
生成的word文件位置:.\dbchecktowordai\reports\
关于费用问题
该工具目前和之前的巡检脚本绑定,99元可以购买全套,即包含html和word格式,之前已经购买过html格式的朋友可以免费获取该工具。
夜雨聆风
