达梦数据库的数据备份和还原

     背景

       近期因为项目需要,开始接触达梦数据库。由于我们的测试环境在客户的服务器上,开发环境在本地,两个服务器网络不联通,有着独立的数据库。因此,经常出现测试人员在测试环境发现了Bug,开发人员需要花很多的精力在本地造相似的数据来复现bug,我由此萌生了迁移数据库的想法,定期把测试数据库的数据还原到本地,方便测试和复现Bug。

      准备工作

        在数据库还原之前,首先在本地安装与测试环境同版本的达梦数据库服务器,这是实现两边数据互相还原的基础。安装完成后,远程到客户环境,用达梦管理工具DMManager注册连接,连接到源数据库(这里建议在注册连接时勾选上“保存密码”,不然每次连接时都要输一次密码)。如下图:

       确认可以连接源数据库后,再在本地创建数据库实例,需要保证以下参数与源数据库的配置相同,否则在还原数据库时会出现类似于“[警告]服务器与文件内数据的 LENGTH_IN_CHAR 参数不匹配”等相关的错误。

        那么,怎么才能知道源数据库的配置信息呢?可以在DMManager中,右键点击连接->管理服务器,查看相关配置信息。

     

     导出和导入      

        通过达梦管理工具DMManager,有三种方式导出数据:全库导出,选定模式导出,选定表导出。操作方式相似,右键单击服务器连接/模式/表名,在弹出的菜单中点击"导出"即可。下图以模式导出为示例。

        设置导出目录和导出文件,点击确定,导出完成后,在导出目录里就可以看到刚刚导出的数据dump文件,将文件拷到本地,用DMManager连接到本地数据库,创建同名的模式(注意,一定要跟导出的模式名称相同),右键点击模式->导入,弹出下面的操作框:

        初始导入只需要编辑"导入目录”,"导入文件",但如果是重复导入,建议根据需要勾选下图中的选项“表存在时的操作”,可选的有SKIP(跳过),APPEND(追加),TRUNCATE(清表),REPLACE(覆盖),如果没有设置,目标数据库里已经有相关表或数据时,在导入过程中会报”重复主键“的错误。

        实操过程中我遇到这样一种情况,源数据库中的模式为ERP_UAT,但是我想把这个数据库导到本地的ERP_DEV里,这时候就需要做模式映射了。先在本地创建模式ERP_UAT,然后点击该模式->导入,在导入的操作框里配置好模式映射,如下图:

        点击确定,导入完成后,会发现新建的ERP_UAT里没有任何数据,数据全都导到ERP_DEV模式里了。

 

     DM数据迁移工具      

        如果原数据库和目标数据库的网络互通,且导入导出的数据量较少,可以考虑使用达梦软件自带的工具“DM数据迁移工具”来实现两个模式间的数据的迁移,或者将数据导出为sql,excel等。操作方法如下:

        1、打开DM数据迁移工具,右键点击迁移->新建迁移,输入名称,点击确定,下一步。

        2、可以按需要选择迁移的模式,这里以DM->DM为例:

        3、配置源数据库和目标数据库的连接方式,类似于DM管理工具中的操作:

         4、配置好源模式和目标模式,选择模式中要同步的表,点击下一步,完成,即可

       本文对于操作相关的描述比较详细,对于经验丰富的研发人员来说可能过于啰嗦,请勿见怪,希望能帮到那些初次接触达梦数据库的道友们。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值