V8R6 的运维体系已经比较成熟。单机启停、主备管理、物理备份、慢 SQL 分析都有现成工具。V9 沿用了这些基础工具,同时补充了监控、高可用恢复、安全控制和集中管理能力。
下面的比较以 2022 年 11 月的《Kingbase V8R6 运维文档》和 2026 年 4 月 1 日发布的《KingbaseES 数据库管理员指南》V9(V009R001C010)为基线,并参考官方版本说明。V8R6 有多个 C、B 补丁版本,后期补丁已经加入部分新能力。具体项目仍要核对完整版本号。
| 对比项 | V8R6 常见做法 | V9 的变化 | 升级时要检查什么 |
|---|---|---|---|
| 版本管理 | 重点核对 V8R6 的 C、B 补丁号 | 官方文档按不同兼容方向维护产品分支 | 目标版本、兼容方向、安装包和驱动是否对应 |
| 部署管理 | 命令、目录脚本和人工检查占比较高 | 部署工具与 KStudio 接管了更多操作 | 原有脚本、工具账号和权限流程是否还能使用 |
| 性能诊断 | 依赖 kbbadger、SQL 统计、活动会话和系统指标 | 增加 KWR/KSH、等待事件、SQL 实时监控等入口 | 监控平台的视图、字段和权限是否兼容 |
| 备份恢复 | 使用 sys_dump、sys_restore、sys_rman 和 PITR | 增强备份集检查、归档 WAL 校验和远程恢复 | V9 是否能完成独立恢复演练 |
| 高可用 | 使用 repmgr、sys_monitor.sh、kbha 和流复制 | 增强多网段、SSL、rewind 和故障节点恢复 | 切换后旧主、复制槽和时间线怎么处理 |
| 安全审计 | 三权分立,支持审计查看和转储 | 增加强制访问控制、国密和敏感数据保护 | 业务、监控、备份账号会不会被新策略拦截 |
| 故障处理 | 依赖巡检 SQL、脚本和现场经验 | 管理员指南给出了更完整的排查和恢复步骤 | 升级方案是否覆盖 V9 的新工具和新参数 |
V8R6 项目通常关注 V008R006 后面的 C、B 补丁号。V9 还要确认兼容方向。官方文档分别维护 Oracle、MySQL、SQL Server 等兼容版本,安装介质、驱动范围和升级说明并不通用。
项目清单里不要只写“V8 升 V9”。源库完整版本、目标版本、兼容分支、操作系统和 CPU 架构都要写清楚。先查数据库版本:
SELECT version();
同时记录安装包名称、初始化参数、驱动版本和集群组件版本。后面的兼容测试、性能对比和回退演练都要用这份清单。
V8R6 运维文档中的集群操作很依赖目录脚本和命令行。DBA 用
sys_monitor.sh
启停集群,再查
repmgr
、数据库日志和操作系统日志判断节点状态。
V9 的部署工具和 KStudio 增加了节点检查、启停、参数配置、日志查询、主备切换、故障恢复和物理备份恢复。运维人员可以把常用操作放到统一入口,也能限制高风险操作的使用权限。
工具出故障或管理网络中断时,还是要回到底层命令:
repmgr cluster show
repmgr service status
所以不能光以来软件界面。操作的DBA至少要能通过命令确认节点角色、守护进程状态和主备延迟。
V8R6 已经能用 kbbadger 分析日志,用 sys_stat_statements 找高耗时、高 I/O SQL,再查 sys_stat_activity、锁视图和操作系统指标。碰到复杂问题时,DBA 往往需要手工对齐几份数据的时间点。
V9 补充了 KWR、KSH、KWR Diff、等待事件、SQL 实时监控和索引建议。后续版本说明还列出了DBMS_SQL_MONITOR、计划缓存视图 sys_stat_cached_plans和 WAL 缓冲区视图 sys_stat_wal_buffer。
排查时可以继续回答几个具体问题:SQL 在等什么,执行阶段消耗了多少 CPU 和 I/O,计划缓存有没有异常,WAL 写入是否拖慢提交。原来的查询仍然能用:
SHOW max_connections ;
SELECT * FROM sys_stat_activity ;
SELECT * FROM sys_stat_replication ;
升级验收时,建议拿 V8R6 的 TOP SQL、业务响应时间和系统资源曲线做基线,再用 V9 的报告和等待事件复查。只跑一次压力测试看不到计划波动和后台任务的影响。
V8R6 和 V9 都使用
sys_dump
、
sys_restore
、
sys_rman
和 WAL 归档。原来的备份检查命令可以保留:
sys_rman --config =/path/sys_rman.conf --stanza =kingbase info
sys_rman --config =/path/sys_rman.conf --stanza =kingbase check
V9 增加了备份集状态检查、异常信息导出和归档 WAL 完整性检查,KStudio 也能远程执行物理备份恢复。这些功能方便值班人员检查备份,但恢复演练仍要单独做。
官方 V9 版本说明提到,数据库内核、数据文件结构以及备份恢复依赖的系统表已经变化。V8R6 数据目录不能直接交给 V9 启动,V8R6 物理备份也不能直接恢复成 V9 数据库。
升级项目应采用官方支持的升级或迁移路径。V8R6 物理备份负责保护原环境和回退,跨版本迁移要用受支持的升级工具、逻辑导出导入或迁移工具。
基础命令没有大变。V9 主要扩展了sys_monitor.sh的子命令,并把故障恢复过程写得更加详细。
| 场景 | V8R6 常用命令 | V9 的变化 |
|---|---|---|
| 实例启停 | sys_ctl start -D <data目录>、sys_ctl -D <data目录> stop | 继续使用 start、stop、restart |
| 集群启停 | ./sys_monitor.sh start/stop | 增加 restart、stoplocal和同步模式调整 |
| 集群状态 | repmgr cluster show | 输出增加 lsn_lag,可以直接查看主备差异 |
| 集群暂停 | V8R6 文档未列为常规步骤 | V9 故障处理中使用 repmgr service pause/unpause |
| 故障节点加入 | kbha -A rejoin -h <主库IP> | 保留原命令,补充 repmgr node rejoin --force-rewind路径 |
| 备库重建 | 现场判断后重新加入 | 文档给出 repmgr standby clone、standby register链路 |
| 远程节点检查 | 主要依赖 SSH | 集群工具可以使用 sys_securecmd |
| 备份检查 | sys_rman info/check | 命令延续,增加备份集和归档 WAL 检查 |
V9 的集群脚本支持这些操作:
./sys_monitor.sh restart
./sys_monitor.sh stoplocal
./sys_monitor.sh node1 sync
./sys_monitor.sh sync_nodes "node1,node2,node3"
./sys_monitor.sh switch_synchronous custom
处理双主、故障备库或时间线异常时,文档会用到下面的命令:
repmgr service pause
repmgr service status
kbha -A rejoin -h <主库IP>
repmgr node rejoin --force-rewind --no-check-wal \
-h <主库IP> -U esrep -d esrep -p <主库端口>
repmgr service unpause
第二组命令会修改集群状态。执行前要确认当前主库、时间线和节点数据新旧关系,先备份故障节点的数据目录。--force-rewind 或重新克隆备库都可能覆盖节点上的数据,不能把示例当成通用修复脚本。
V9 也增加了新的诊断视图:
SELECT * FROM sys_stat_activity ;
SELECT * FROM sys_stat_statements ;
SELECT * FROM sys_stat_cached_plans ;
SELECT * FROM sys_stat_wal_buffer ;
后两个视图要按目标 V9 补丁和兼容分支核对。监控平台如果直接读取视图字段,升级前还要检查采集账号权限和字段变化。
V8R6 已有数据库管理员、安全管理员和审计管理员三权分立,也支持审计记录查看与转储。V9 增加了列级、对象级强制访问控制、应用级敏感数据保护、登录来源限制、弱口令检查,以及配置文件和 WAL 保护。部分版本还提供 SM2、SM3、SM4 等国密能力。
这些配置会直接影响业务连接和运维工具。升级测试要覆盖业务账号、连接池账号、监控账号和备份账号。审计空间、转储任务、密钥和证书也要纳入巡检,否则安全功能上线后容易出现账号无法登录或审计目录写满的问题。
V8R6 系统如果规模不大,业务也没有新增合规要求,可以先保持现网稳定。不过,团队仍应安排 V9 验证。V9 提供了更多性能证据,高可用恢复步骤更完整,安全策略也能覆盖新的合规要求。
正式切换前,至少完成下面这些检查:
记录 V8R6 完整补丁号、兼容模式、操作系统和集群组件版本。
确认 V9 的兼容方向、完整版本号、安装包和驱动。
扫描表、分区、函数、存储过程、触发器、插件和作业。
测试 JDBC、ODBC、连接池、中间件和批处理任务。
根据数据量和停机窗口确定升级或迁移方案。
验证 V8R6 回退流程,并在 V9 演练全量、增量、归档和 PITR。
保存资源指标、等待事件、TOP SQL 和核心业务响应时间。
演练主备切换、旧主恢复、网络中断、备库重建和回切。
复核业务、监控、备份账号以及审计和加密配置。
写清回退条件、执行步骤、数据补录方式和负责人。
V8R6 DBA 不需要重新学习全部命令。升级工作的重点是补齐 V9 的监控、安全和故障恢复流程,再用恢复演练确认方案能落地。完成这些工作后,V9 才能带来实际的运维收益。
《Kingbase V8R6 运维文档》
《KingbaseES 数据库管理员指南》V9(V009R001C010)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23825935/viewspace-3176534/ ,如需转载,请注明出处,否则将追究法律责任。