测试环境
操作系统:centos7
cpu架构:x86
当前版本:03134284488-20260717-337795-20200 Pack21 8.1.4.200
目标版本:03134284604-20260804-340667-20228 Pack5 8.1.5.60
升级前准备
检测数据库状态
关闭应用连接并清理会话
检查活跃会话
SELECT * FROM V$SESSIONS;
检查是否存在待回滚的事务
SELECT * FROM V$PURGE;
主动做检查点刷盘
checkpoint(100);
清理会话(若应用无法关闭)
BEGIN
FOR session IN (SELECT SESS_ID FROM V$SESSIONS) LOOP
SP_CANCEL_SESSION_OPERATION(session.SESS_ID);
SP_CLOSE_SESSION(session.SESS_ID);
END LOOP;
END;
备份相关文件和数据
脱机备份
停止数据库服务
进行冷备
备份源库的实例目录
将dmdbms重命名为dmdbms_bak
安装新版本
拷贝原服务脚本
验证升级结果
启动服务
重建系统包和视图
SP_CREATE_SYSTEM_VIEWS(0); SP_CREATE_SYSTEM_VIEWS(1); SP_CREATE_SYSTEM_PACKAGES(0); SP_CREATE_SYSTEM_PACKAGES(1);验证版本
回退操作
若升级失败,执行回退
1.停止服务
./DmServiceDMSERVER stop
2.恢复旧软件目录
mv /dm/dmdbms_bak /dm/dmdbms
3.恢复数据
备份集恢复
./dmrman
RESTORE DATABASE '/data/dmdata/DAMENG/dm.ini' FROM BACKUPSET '/data/dmbak/full_bak';
RECOVER DATABASE '/data/dmdata/DAMENG/dm.ini' UPDATE DB_MAGIC;
注意事项
- 备份策略:同时备份软件目录 + 数据库冷备份集,不能只依赖 dexp 逻辑备份;软件目录备份可以快速回退程序,备份集保护业务数据;
- /etc/dm_svc.conf切勿覆盖,该文件保存客户端连接、时区等全局配置,覆盖后会引发客户端连接异常;
- 测试环境完整演练升级 + 回退整套流程之后,再执行生产变更;
更多信息参考eco.dameng.com