暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

达梦数据库版本升级

原创 刘江 2021-08-22
1940

导言

数据库版本升级,是为了使用最新的功能或者解决旧版本的一些问题
以下所有升级方法,在升级前请务必做好备份
这里总结了三种升级方法,选择其中一种升级即可

相关信息

系统环境
操作系统:centos7
CPU:i7-7700HQ
数据库安装包:
1-1-126-20.09.04-126608-ENT(旧)
1-2-18-21.06.24-142387-10013-ENT(新)
数据库目录规划:
安装目录:/home/dmdba/dmdbms
实例目录:/dmdata
备份目录:/dmbak

详细升级方法及步骤

一、通过更换新的执行码进行数据库升级

1、脱机备份

1)关闭数据库服务

2)进行脱机备份

./dmrman CTLSTMT="BACKUP DATABASE '/dmdata/DAMENG/dm.ini' BACKUPSET '/dmbak/BACKUP_FILE_01'"

2、前台启动数据库后在exit正常退出

./dmserver /dmdata/DAMENG/dm.ini #当数据库启动到 SYSTEM IS READY 然后exit退出即可

3、移动数据库实例目录到另一个目录

cp -R DAMENG/ /data

4、卸载低版本数据库

./uninstall.sh -i #这里建议使用root用户卸载

5、安装高版本数据库

正常安装,初始化的实例要和低版本数据库参数相同

6、使用高版本数据库启动数据库实例

./dmserver /dmdata/DAMENG/dm.ini #数据库启动到SYSTEM IS READY升级成功

7、新开一个会话,进入disql查看一下数据库版本

select id_code(); #版本正确则进行下一步

8、注册并启动服务

./dm_service_installer.sh -t dmserver -p DMSERVER -dm_ini /dmdata/DAMENG/dm.ini

二、通过DTS数据迁移进行数据库升级

1、DTS工具简介

DTS是达梦数据库自带的一个数据迁移的图形化工具,可以进行达梦到达梦,达梦到其他数据库,其他数据库到达梦的数据迁移

2、初始化一个高版本数据库实例

在另外一台服务器安装高版本数据库,并初始化实例,要求参数和要迁移数据库实例保持一致

3、高本版数据库上创建对应用户并授予DBA角色

create user test identified by "123456789"; grant dba to test;

4、使用DTS进行数据迁移

迁移的时候要注意对应用户迁移对应模式下的数据,这样不会出错;
1.png
2.png
我这个是测试库,只有一个表,接下来迁移即可;
迁移完成后要确认以下数据是不是准确,没有问题就可以进行下一步了;

5、高版本数据库进行物理备份

./dmrman CTLSTMT="BACKUP DATABASE '/dmdata/DAMENG/dm.ini' BACKUPSET '/dmbak/BACKUP_FILE_01'"

6、卸载低版本数据库、安装高版本数据库,进行物理还原

1)原来的服务器卸载低版本数据库,安装高版本数据库
2)进行物理还原

#还原 ./dmrman CTLSTMT="RESTORE DATABASE '/dmdata/DAMENG/dm.ini' FROM BACKUPSET '/dmbak/BACKUP_FILE_01'"
#恢复 ./dmrman CTLSTMT="RECOVER DATABASE '/dmdata/DAMENG/dm.ini' FROM BACKUPSET '/dmbak/BACKUP_FILE_01'"
#更新db_magic ./dmrman CTLSTMT="RECOVER DATABASE '/dmdata/DAMENG/dm.ini' UPDATE DB_MAGIC"

7、登录新版本数据库查看数据和版本

3.png

三、通过dmp文件逻辑导入导出进行数据库升级

1、dexp和dimp简介

dexp和dimp是两个命令行工具,它们可以进行全库、用户、模式、表级的导入导出,还支持通配符导出一类表的数据;

2、使用dexp进行逻辑导出

./dexp USERID=test/123456789 FILE=test1.dmp LOG=test1.log SCHEMAS=test DIRECTORY=/dmdata

3、卸载低版本数据库

./uninstall.sh -i

4、安装高版本数据库并初始化实例

./dminit path=/dmdata

5、创建用户并授予DBA权限

create user test identified by "123456789"; grant dba to test;

6、使用dimp进行逻辑导入

./dimp USERID=test/123456789 FILE=test1.dmp LOG=test1.log DIRECTORY=/dmdata

4.png

总结

1)数据库升级前一定要做好数据备份
2)数据库升级要先前台启动在正常关闭,保证所有数据落盘
3)物理备份只能在同版本数据库还原
4)DTS迁移方法适合集群环境的升级
5)dexp和dimp的方法要注意导出需要的模式

更多资讯请上达梦技术社区了解: https://eco.dameng.com
最后修改时间:2021-08-22 12:39:57
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
1人已赞赏
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论