DBdoctor数据库性能诊断软件使用指南
前言
笔者在国产化行业深耕已有不短时日,在这个过程中,深切体会到相关工具的匮乏。不过,在众多工具之中, DBdoctor
脱颖而出,着实是一款不可多得且十分好用的软件。
DBdoctor
是一款专注于内核级的数据库性能诊断软件。它有着强大的功能,能够对数据库展开极为细致的扫描工作。凭借其卓越的性能,仅需短短一分钟,就能精准定位数据库中存在的性能问题,帮助用户大幅提升性能诊断的效率,真正实现百倍提效。
一直以来,数据库性能诊断面临着门槛高、耗时久的难题,而 DBdoctor
针对这些痛点,为用户提供了便捷高效的解决方案。它可以深入数据库内核,对实时产生的海量数据进行全面且深入的分析,进而为用户提供精准无误的诊断分析结果以及切实可行的优化建议 。

单机版快速安装
DBdoctor支持两种安装模式,分别是安装包解压一键安装与docker镜像手动导入安装。其中,安装包解压一键安装模式目前仅支持Linux系统(具体支持的操作系统详情请参见官方手册)。
安装包解压一键安装
下载地址
◦ x86安装包:访问DBdoctor官网产品下载中心(https://www.dbdoctor.cn/product/11?utm=06 ),在安装方式中选择一键安装包,架构选择x86,64-bit,最后点击“立即下载”按钮即可。
◦ ARM安装包:同样访问DBdoctor官网产品下载中心(https://www.dbdoctor.cn/product/11?utm=06 ),安装方式选择一键安装包,架构选择ARM,64-bit,随后点击“立即下载”按钮。安装步骤
◦ 预估安装时间约为1分钟。将下载的tar.gz安装包解压缩至指定目录,进入解压后的根目录,执行./dbd -I
命令进行DBdoctor零依赖快速安装。以下以V3.3.0.1
版本为例进行说明:
tar -zxvf DBdoctorV3.3.0.1_20250221_x86.tar.gz -C data/DBdoctor
cd /data/DBdoctor
./dbd -I
◦ 进入到指定目录进行安装操作,示例如下:
[root@localhost DBdoctor]# pwd
/data/DBdoctor
[root@localhost DBdoctor]# ls
dbdoctor-3.3.0.1
[root@localhost DBdoctor]# cd dbdoctor-3.3.0.1/
[root@localhost dbdoctor-3.3.0.1]# ls
agent counter.sh dev entrypoint host lib64 media proc root scripts srv UniteServer.py
agent-entrypoint.sh dbd Dockerfile etc jdk17 logs mnt query-instance.sh run service sys usr
bin dbd.log Dockerfile-agent home lib log_tmp opt README sbin sql tmp var
[root@localhost dbdoctor-3.3.0.1]# ./dbd -I
◦ 安装过程中会输出一系列日志信息,示例如下:
2025-03-26 12:51:55.937173543 [INFO] [dbd]: Command Tool Version 3.3.0.1,Handler Command: install
2025-03-26 12:51:56.001050975 [INFO] [dbd]: current_path available_space is 36GB, is valid, to do next~
2025-03-26 12:51:56.014077556 [INFO] [dbd]: stand-alone mode,all service will install in one host
2025-03-26 12:51:56.522734730 [INFO] [dbd]: HOST_IP: 192.168.22.202
2025-03-26 12:51:56.543951134 [INFO] [dbd]: port 22888 is already use
2025-03-26 12:51:56.560788768 [INFO] [dbd]: AGENT port: 22889
2025-03-26 12:51:56.582792719 [INFO] [dbd]: port 8080 is already use
2025-03-26 12:51:56.599652063 [INFO] [dbd]: SAMPLE_PORT port: 8081
...(此处省略部分日志信息)
2025-03-26 12:53:19.879523880 [INFO] [dbd]: add and set demo, wait a moment......
✔ mysql start
✔ kafka start
✔ dra-algo-ml start
✔ dra-pi start
✔ dra-data-sample start
✔ dra-tools start
✔ dra-cost start
✔ dra-cost57 start
✔ dra-cost-pg11 start
✔ dra-cost-pg14 start
✔ dra-unite start
✔ dra-algo-params start
✔ dra-agent start
安装成功后,会显示如下登录信息:
┌───────────────────────────────────────────────────────────────────────────────┐
│ ____ ____ ____ ___ ____ _____ ___ ____ │
│ | _ \ | __ ) | _ \ / _ \ / ___||_ _|/ _ \ | _ \ │
│ | | | || _ \ | | | || | | || | | | | | | || |_) | │
│ | |_| || |_) || |_| || |_| || |___ | | | |_| || _ < │
│ |____/ |____/ |____/ \___/ \____| |_| \___/ |_| \_\ │
│ │
│ WebSite: http://192.168.22.202:13001/#/login │
│ DBA User: tester │
│ DBA Password: Root2023! │
│ If you want to set system config,please use admin user to login in. │
│ Admin User: admin │
│ Admin Password: 123456 │
│ If you changed the default password, please login in with the new password. │
└───────────────────────────────────────────────────────────────────────────────┘
其中,http://192.168.22.202:13001/#/login
为自己的主机IP地址。脚本会自动创建一个初始测试账号 tester(初始密码 Root2023!)和一个初始管理员账号 admin(初始密码 123456)。
日志路径
不同组件的日志存储路径如下:
mysql日志:/data/DBdoctor/dbdoctor-3.3.0.1/service/mysql/mysql_error.log
agent日志:/data/DBdoctor/dbdoctor-3.3.0.1/usr/local/dra-agent/logs/*.log
kafka日志:/data/DBdoctor/dbdoctor-3.3.0.1/service/kafka/logs/server.log
dra-pi日志:/data/DBdoctor/dbdoctor-3.3.0.1/service/dra-pi/logs/*.log
dra-data-sample日志:/data/DBdoctor/dbdoctor-3.3.0.1/service/dra-data-sample/logs/*.log
基本信息
主页
首次提示登录admin 账号后需要修改密码,建议及时进行调整。
使用DBA User
下的tester
用户登录,界面展示如下:
默认的mysql
实例界面:
默认的mysql实例
大屏界面
性能洞察功能界面美观实用:
产品激活
按照提示申请30天商业版License,具体操作步骤如下:
进入微信公众号产品服务下,选择免费申请License。 
按指引填写相关信息并提交申请。

License申请通过后,从填写的邮箱中获取授权信息,并将其拷贝粘贴到激活页面,然后重新刷新页面完成激活。

添加实例实践
选择实例添加 
填写帐号信息
目前纳管达梦实例不支持自动纳管集群,只能单个添加纳管,这里以SYSDBA用户为例填写帐号信息,示例如下:
代理安装
◦ 自动部署方式:填写安装代理的主机信息,可选择自动方式部署。
◦ 检查结果查看:填写完成后点击check,会弹出一个页面显示检查结果。
◦ 手工部署方式:若选择手工部署,复制命令到对应的服务器执行安装。示例如下:
通过vpn组网方式连接两台服务器(带宽有限),将命令拷贝到终端回车进行部署,示例如下:
[root@OADB2 agent]# ./agent --install -h 192.168.25.170 -k 192.168.22.202:9093 -s 192.168.22.202:13001
2025-03-26 13:55:32.991126033 [INFO] [agent]: time check success
2025-03-26 13:55:33.798891328 [INFO] [agent]: current_path available_space is 79GB, is valid, to do next~
2025-03-26 13:55:33.802998229 [WARN] [agent]: ulimit -n is lower than 1025,suggest set nofile greater than 10240
2025-03-26 13:55:33.844559855 [INFO] [agent]: selinux mode is Disabled
2025-03-26 13:55:34.378205674 [INFO] [agent]: agent port: 22888
✔ dra-agent start
2025-03-26 13:55:45.754300398 [INFO] [agent]: dbd service start complete
[root@OADB2 agent]#
需要注意的是,目前只能使用root
用户安装代理程序。若之前使用普通用户安装失败,可按如下方式手工配置启动:
[root@OADB2 agent]# ./agent --install -h 192.168.25.170 -k 192.168.22.202:9093 -s 192.168.22.202:13001
2025-03-26 13:55:32.991126033 [INFO] [agent]: time check success
2025-03-26 13:55:33.798891328 [INFO] [agent]: current_path available_space is 79GB, is valid, to do next~
2025-03-26 13:55:33.802998229 [WARN] [agent]: ulimit -n is lower than 1025,suggest set nofile greater than 10240
2025-03-26 13:55:33.844559855 [INFO] [agent]: selinux mode is Disabled
2025-03-26 13:55:34.378205674 [INFO] [agent]: agent port: 22888
✔ dra-agent start
2025-03-26 13:55:45.754300398 [INFO] [agent]: dbd service start complete
[root@OADB2 agent]#
依次配置需要纳管的实例 
使用体验
在DBdoctor
监控达梦数据库方面,功能较为齐全。


SQL分析记录功能展示:


主机监控信息
简单比对发现,mysql相较于达梦数据库,在部分功能上有所差异。
体验下来DBdoctor安装部署便捷,基本操作易上手,助力高效开展数据库性能诊断

安装部署
1.分享一个以前搭建主备集群遇到的一个路径乱码案例
2.给大家分享如何标准化部署达梦单机环境
3.DM 达梦数据库中大写敏感介绍分享
4.达梦 DSC 集群+DW 备库部署实战:高可用架构搭建指南
数据迁移
1.分享工作中数据迁移的实用技巧与方法
2.Oracle 迁移 DM 数据库实践
3.SQLark 迁移实践分享(oracle-达梦数据库)
4.年过完了,SQLark 3.3 发版了!连接分组,断点续迁,顺滑建表,数据筛选,导出结构这些都有!)
5.SQLark 实战 | 如何从Excel、csv、txt等外部文件进行数据导入
6.PostgerSQL迁移到达梦案例
工具使用与日常处理
1.DataGrip 访问国产数据库_datagrip 连接国产数据库
2.如何使用 dbeaver 连接达梦数据库
3.更新大字段提示-2201 无效的对象问题
4.DM7 读写分离部署问题总结
5.DM7 读写分离集群备库数据不同步问题处理
6.达梦数据库 DISQL 工具部署及使用技巧
7.达梦数据库日常巡检方法分享
8.如何查询达梦数据库缓存执行计划与清理
9.达梦数据库运维工具分享
10.东方通中间件环境中如何部署达梦企业管理工具(DEM)
11.达梦 dmdbchk 使用秘籍:掌握 DM 数据库检查工具的功能与参数
12.ET 工具快速上手:从入门到精通的使用步骤
13.达梦数据库 SQL 日志详解:关键概念、功能及实践方法
14.搞懂达梦数据库 SQL 日志使用延伸,这些方法超实用!
15.DM 数据库守护集群入门指南:带你走进数据守护的世界
16.创建表时为何会提示“[-2670]:对象[ID]默认约束表达式无效”?
17.SQLark 实战 | 如何通过对象名和 DDL 快速搜索数据库对象
18.[-2508]登录失败次数超过限制
19.达梦数据库参数修改方法详解
20.达梦数据库JDBC驱动与Hibernate配置全攻略,开发效率翻倍!
SQL 调优
1.DM 传统行业 SQL 优化案例分享
2.DM 数据库 SQL 优化案例分享
3.如何查询 DM 数据库缓存执行计划与清理
4.使用 ob_tools 包收集分析 oceanbase 数据库 oracle 租户缓慢 sql 语句
5.使用 format_obproxy_digest_log 工具分析 obproxy 网络层耗时 SQL
6.DM 数据库回表优化案例
7.SQL 优化案例分享
8.DM SQL 关联列 like 优化案例
9.达梦数据库 SQL 关联列 like 使用 hint 方式优化案例




