行业资讯

达梦数据库-学习-51-主备集群升级

发布时间:2026/8/20 21:23:24
达梦数据库-学习-51-主备集群升级 目录一、环境信息二、说点什么三、升级步骤0、记录无效对象1、全库备份1链接2示例2、刷检查点3、关闭集群1备机2主机3查看服务4、安装目录改名5、升级1镜像挂载2软件安装3镜像卸载6、拷贝文件1主机2备机7、启动集群1主机2备机3查看服务8、重建系统包1切换目录2登录数据库3执行SQL9、版本回退1方法一2方法二一、环境信息名称值CPU12th Gen Intel(R) Core(TM) i7-12700H操作系统CentOS Linux release 7.9.2009 (Core)内存7G逻辑核数8DM版本DM Database Server 64 V8DB Version: 0x7000d03134284368-20250917-293539-20149Msg Version: 44Gsu level(5) cnt: 0二、说点什么在工作中经常会遇到数据库需求或BUG一般都需要升级版本来解决问题今天来写一篇博客来记录一下升级步骤方便我们后续的查阅。三、升级步骤0、记录无效对象为了和升级后作对比新出现的无效对象建议处理。-- 1.查询无效对象 select * from all_objects b where b.status not in (VALID, N/A) -- 2.查询/修复无效索引(包括函数索引) select SP_REBUILD_INDEX(||a.owner||,||b.OBJECT_ID||);, b.OBJECT_ID,a.table_owner||.||a.table_name table_name, a.owner||.||a.index_name index_name, a.status, b.last_ddl_time last_ddl_time from all_indexes a, all_objects b where b.status not in (VALID, N/A) and b.object_namea.index_name and b.ownera.owner;1、全库备份建议升级前一定要做备份虽然升级出现问题的可能性不大但生产环境保持谨慎保证数据安全的最后一道防线。1链接大家可以参考一下之前的博客。序号链接1《达梦数据库-学习-22-库级物理备份恢复超详细版》2示例BACKUP DATABASE FULL BACKUPSET FULL_BAK_20250418 MAXPIECESIZE 2048 COMPRESSED LEVEL 5 PARALLEL 8;2、刷检查点主备机建议全部执行。有的服务器性能比较强劲且跑了大量增删改业务会有较多脏页没有刷盘如果执行了关库虽然也会100%刷检查点但我们选择的路线就少了刷盘时间太长超过停机的空窗期我们还需和业务进行解释沟通成本提高也有可能后续的业务。SQL SELECT * FROM V$INSTANCE_RECOVERY; 行号 RECOVERY_ESTIMATED_IOS ACTUAL_REDO_BLKS TARGET_REDO_BLKS LOG_FILE_SIZE_REDO_BLKS LOG_CHKPT_TIMEOUT_REDO_BLKS LOG_CHKPT_INTERVAL_REDO_BLKS ---------- ---------------------- -------------------- ---------------- ----------------------- --------------------------- ---------------------------- FAST_START_IO_TARGET_REDO_BLKS TARGET_MTTR ESTIMATED_MTTR CKPT_BLOCK_WRITES OPTIMAL_LOGFILE_SIZE ESTD_CLUSTER_AVAILABLE_TIME WRITES_MTTR WRITES_LOGFILE_SIZE ------------------------------ ----------- -------------- -------------------- -------------------- --------------------------- ----------- ------------------- WRITES_LOG_CHECKPOINT_SETTINGS WRITES_OTHER_SETTINGS WRITES_AUTOTUNE WRITES_FULL_THREAD_CKPT ------------------------------ --------------------- --------------- ----------------------- 1 34 184 2097152 2097152 NULL 180 NULL 1 1 431 512 NULL 0 0 449 1 0 0 已用时间: 20.118(毫秒). 执行号:210903. SQL checkpoint(100); DMSQL 过程已成功完成 已用时间: 64.076(毫秒). 执行号:210904. SQL SELECT * FROM V$INSTANCE_RECOVERY; 行号 RECOVERY_ESTIMATED_IOS ACTUAL_REDO_BLKS TARGET_REDO_BLKS LOG_FILE_SIZE_REDO_BLKS LOG_CHKPT_TIMEOUT_REDO_BLKS LOG_CHKPT_INTERVAL_REDO_BLKS ---------- ---------------------- -------------------- ---------------- ----------------------- --------------------------- ---------------------------- FAST_START_IO_TARGET_REDO_BLKS TARGET_MTTR ESTIMATED_MTTR CKPT_BLOCK_WRITES OPTIMAL_LOGFILE_SIZE ESTD_CLUSTER_AVAILABLE_TIME WRITES_MTTR WRITES_LOGFILE_SIZE ------------------------------ ----------- -------------- -------------------- -------------------- --------------------------- ----------- ------------------- WRITES_LOG_CHECKPOINT_SETTINGS WRITES_OTHER_SETTINGS WRITES_AUTOTUNE WRITES_FULL_THREAD_CKPT ------------------------------ --------------------- --------------- ----------------------- 1 0 72 2097152 2097152 NULL 180 NULL 1 1 431 512 NULL 0 0 449 2 0 0 已用时间: 0.547(毫秒). 执行号:210905.RECOVERY_ESTIMATED_IOS缓存中的脏页数量。3、关闭集群均切换到达梦安装目录的bin目录例如cd /dm/dmdbms/bin1备机./DmM Tab键 stop ./DmW Tab键 stop ./DmS Tab键 stop ./DmAP Tab键 stop2主机./DmW Tab键 stop ./DmS Tab键 stop ./DmAP Tab键 stop3查看服务所有节点执行ps -ef|grep dmdba无服务为正常。4、安装目录改名所有节点执行mv /dm/dmdbms /dm/dmdbms_202512055、升级所有节点执行1镜像挂载mount -o loop dm8_20250923_x86_centos7_64.iso /mnt/2软件安装[rootrhel709:/opt/Pkg/8.1.4.80.pack34]# /mnt/DMInstall.bin -i 安装语言: [1]: 简体中文 [2]: English 请选择安装语言 [1]: 解压安装程序.......... 硬件架构校验通过 欢迎使用达梦数据库安装程序 是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n 是否设置时区? (Y/y:是 N/n:否) [Y/y]: 设置时区: [ 1]: (GTM-12:00) 日界线西 [ 2]: (GTM-11:00) 萨摩亚群岛 [ 3]: (GTM-10:00) 夏威夷 [ 4]: (GTM-09:00) 阿拉斯加 [ 5]: (GTM-08:00) 太平洋时间美国和加拿大 [ 6]: (GTM-07:00) 亚利桑那 [ 7]: (GTM-06:00) 中部时间美国和加拿大 [ 8]: (GTM-05:00) 东部部时间美国和加拿大 [ 9]: (GTM-04:00) 大西洋时间美国和加拿大 [10]: (GTM-03:00) 巴西利亚 [11]: (GTM-02:00) 中大西洋 [12]: (GTM-01:00) 亚速尔群岛 [13]: (GTM) 格林威治标准时间 [14]: (GTM01:00) 萨拉热窝 [15]: (GTM02:00) 开罗 [16]: (GTM03:00) 莫斯科 [17]: (GTM04:00) 阿布扎比 [18]: (GTM05:00) 伊斯兰堡 [19]: (GTM06:00) 达卡 [20]: (GTM07:00) 曼谷河内 [21]: (GTM08:00) 中国标准时间 [22]: (GTM09:00) 首尔 [23]: (GTM10:00) 关岛 [24]: (GTM11:00) 所罗门群岛 [25]: (GTM12:00) 斐济 [26]: (GTM13:00) 努库阿勒法 [27]: (GTM14:00) 基里巴斯 请选择时区 [21]: 安装类型: 1 典型安装 2 服务器 3 客户端 4 自定义 请选择安装类型的数字序号 [1 典型安装]: 所需空间: 1753M 请选择安装目录 [/opt/dmdbms]:/dm/dmdbms 可用空间: 68G 是否确认安装路径(/dm/dmdbms)? (Y/y:是 N/n:否) [Y/y]: 安装前小结 安装位置: /dm/dmdbms 所需空间: 1753M 可用空间: 68G 版本信息: 有效日期: 安装类型: 典型安装 是否确认安装? (Y/y:是 N/n:否):y 配置文件/etc/dm_svc.conf已存在,是否进行替换? (Y/y,N/n) [Y/y]:n 2025-12-03 10:32:52 [INFO] 安装达梦数据库... 2025-12-03 10:32:52 [INFO] 安装 基础 模块... 2025-12-03 10:32:54 [INFO] 安装 服务器 模块... 2025-12-03 10:32:55 [INFO] 安装 客户端 模块... 2025-12-03 10:32:56 [INFO] 安装 驱动 模块... 2025-12-03 10:32:56 [INFO] 安装 手册 模块... 2025-12-03 10:32:56 [INFO] 安装 服务 模块... 2025-12-03 10:32:57 [INFO] 移动日志文件。 2025-12-03 10:32:57 [INFO] 正在启动DmAPService服务... 2025-12-03 10:32:58 [INFO] 启动DmAPService服务成功。 2025-12-03 10:32:58 [INFO] 安装达梦数据库完成。 安装结束3镜像卸载umount /mnt6、拷贝文件有些C或JAVA外部函数记得拷贝拷贝时需用dmdba用户执行。1主机cp /dm/dmdbms_20251205/bin/dm.key /dm/dmdbms/bin/ cp /dm/dmdbms_20251205/bin/DmS* /dm/dmdbms/bin/ cp /dm/dmdbms_20251205/bin/DmW* /dm/dmdbms/bin/ cp /dm/dmdbms_20251205/tool/dmagent/resources/ap/* /dm/dmdbms/tool/dmagent/resources/ap/2备机cp /dm/dmdbms_20251205/bin/dm.key /dm/dmdbms/bin/ cp /dm/dmdbms_20251205/bin/DmS* /dm/dmdbms/bin/ cp /dm/dmdbms_20251205/bin/DmW* /dm/dmdbms/bin/ cp /dm/dmdbms_20251205/bin/DmM* /dm/dmdbms/bin/ cp /dm/dmdbms_20251205/tool/dmagent/resources/ap/* /dm/dmdbms/tool/dmagent/resources/ap/7、启动集群均切换到达梦安装目录的bin目录例如cd /dm/dmdbms/bin1主机./DmS Tab键 start ./DmW Tab键 start ./DmAP Tab键 start2备机./DmS Tab键 start ./DmW Tab键 start ./DmAP Tab键 start3查看服务所有节点执行ps -ef|grep dmdba是否能查看到启动的服务。8、重建系统包主库执行即可1切换目录cd /dm/dmdbms/bin2登录数据库./disql SYSDBA/SYSDBA3执行SQLSP_CREATE_SYSTEM_PACKAGES (0); SP_CREATE_SYSTEM_PACKAGES (1);--这一步第一次执行可能提示编译错误。 如重建系统包失败执行 --1.检查COMPATIBLE_MODE如果结果COMPATIBLE_MODE2记录ORA_DATE_FMT参数值并执行第2步 select * from v$dm_ini where para_name in(COMPATIBLE_MODE,ORA_DATE_FMT); --2.修改参数值建议是每一台服务器都执行避免没开参数同步。 sp_set_para_value(2,ORA_DATE_FMT,1); --3.重启集群或单机 --4.重建系统包 SP_CREATE_SYSTEM_PACKAGES (0); SP_CREATE_SYSTEM_PACKAGES (1); --5.修改ORA_DATE_FMT项值修改回原来值建议是每一台服务器都执行避免没开参数同步。 sp_set_para_value(2,ORA_DATE_FMT,0); --6.重启集群这里就升级完毕。9、版本回退1方法一关闭服务将安装目录改名替换为原来的安装目录拷贝文件重启服务即可。2方法二关闭服务将安装目录改名替换为原来的安装目录拷贝文件进行备份恢复。