达梦数据库——数据备份相关

本文介绍了如何使用达梦数据库的CONSOLE工具和MANAGER工具进行数据备份和还原操作。详细步骤包括停止数据库服务、选择备份类型、设置备份参数、还原备份文件等,确保在归档模式下进行安全的数据管理。

达梦数据库的备份与还原

  1. 使用CONSOLE工具进行备份还原

1.备份操作。

点击“开始-所有程序-达梦数据库-客户端-DM控制台工具”。

使用CONSOLE工具进行备份还原操作时,要停止数据库,如果不停止会造成数据丢失且会提示错误。

可以使用DM服务查看器停止需要备份的数据库实例服务,点击“开始-所有程序-达梦数据库-DM服务查看器-右键停止”。

打开DM控制台工具后,选择备份还原,选择待备份目标数据库 dm.ini 文件路径,点击下一步进行详细选择。

新建备份:

根据实际情况填写备份名;备份路经;选择进行完全备份还是增量备份,在进行增量备份时需要添加基备份目录;是否对备份大小进行限制;备份是否压缩;是否加密。点击确认则进行备份操作,备份文件可通过备份路径查找。

2.还原操作

点击添加选择备份文件存在的目录,点击下一步。

点击需要还原的备份数据,点击还原。

点击确认,进行数据库还原操作。

  1. 使用 MANAGER 工具备份还原

使用MANAGER 工具进行备份还原时,dmap服务是打开的,数据库实例是打开的,数据库是归档模式。

点击“开始-所有程序-达梦数据库-客户端-DM管理工具”,连接需要备份的数据库实例。连接好后,右键点击“管理服务器”,点击“系统管理”,点击“配置”后点击“转换”,点击“归档配置”,选择“归档”,添加归档目标,点击确认,右键点击“管理服务器”,点击“系统管理”,点击“打开”后点击“转换”,点击确定。

  1. 备份

设置完成后,选择备份,选择相应的备份操作,

库备份:

表备份:

表空间备份:

备份完成后,点击库备份,表备份,表空间备份会出现备份的文件。

2.还原

右键备份文件,点击备份恢复进行还原。

<think> 嗯,用户需要将达梦数据库备份数据恢复到新的达梦数据库。这个问题很实际,可能是用户正在迁移数据库或者搭建测试环境。让我仔细梳理一下操作流程。 从用户提供的引用材料来看,关键点在于:备份文件必须存放在服务器本地(引用2);恢复操作需要用到dmrman工具(引用2和3);整个过程需要关闭数据库服务(引用2)。用户特别强调是"恢复到新的数据库",这说明目标数据库是新建的,需要特别注意初始化参数匹配问题。 根据引用2的示例代码,我发现恢复操作分为两个核心步骤:先用restore还原数据库结构,再用recover应用日志恢复数据一致性。但用户场景是迁移到新库,这里有个隐藏风险——如果原库的字符集或页大小与新库初始化参数不一致,会导致恢复失败。这个细节必须提醒用户。 考虑到用户可能不熟悉达梦的备份体系,我决定先解释物理备份的概念(引用3提到的脱机备份),再分步骤说明操作流程。需要特别强调三点:一是备份文件路径必须写绝对路径;二是update db_magic命令的必要性(引用2);三是服务状态检查的重要性(引用2的ps -ef命令示例)。 在最后的安全建议部分,要补充引用1提到的"数据完整性"原则,建议用户恢复后立即验证数据。另外想到个易错点:如果备份时使用了加密或压缩,恢复命令需要额外参数,这个虽然没出现在引用里,但值得提醒。 用户应该需要完整的命令行示例,准备把引用2的代码优化一下:去除use_ap参数(默认值够用),补充注释说明每个参数含义,特别是dm.ini和备份集路径的对应关系。 </think> 以下是将达梦数据库备份数据恢复到**全新数据库**的完整步骤(基于DM8版本),结合备份文件类型提供两种恢复方案: --- ### **方案1:物理备份恢复(推荐全量备份场景)** #### **前提条件** 1. 新库需与源库相同的: - 数据库版本(主版本一致) - 页大小(`PAGE_SIZE`) - 字符集(`CHARSET`) - 大小写敏感设置(`CASE_SENSITIVE`) 2. 备份文件已传输到新服务器本地目录(引用[2]强调) #### **恢复步骤** ```bash # 1. 关闭目标数据库服务(新库) ./DmServiceDMSERVER stop # 2. 使用dmrman工具执行恢复 cd /dm8/bin ./dmrman # 3. 在dmrman命令行中依次执行(注意替换路径) RMAN> RESTORE DATABASE '/dm8/data/DAMENG_NEW/dm.ini' FROM BACKUPSET '/dmbak/DB_FULL_20231001'; RMAN> RECOVER DATABASE '/dm8/data/DAMENG_NEW/dm.ini' FROM BACKUPSET '/dmbak/DB_FULL_20231001'; RMAN> RECOVER DATABASE '/dm8/data/DAMENG_NEW/dm.ini' UPDATE DB_MAGIC; ``` > **关键参数说明**: > - `'/dm8/data/DAMENG_NEW/dm.ini'`:**新库配置文件路径**(需提前初始化空库) > - `'/dmbak/DB_FULL_20231001'`:源库的**备份集目录** > - `UPDATE DB_MAGIC`:更新数据库魔数(强制生效变更)[^2] --- ### **方案2:逻辑导出导入(适用于版本/参数不一致)** #### **适用场景** 当新库与源库存在参数差异时(如页大小不同),需使用`dexp/dimp`工具: ```bash # 源库执行导出(全库模式) ./dexp USERID=SYSDBA/SYSDBA@localhost:5236 DIRECTORY=/dmbak FILE=full_exp.dmp LOG=exp.log FULL=Y # 新库执行导入(需提前初始化新实例) ./dimp USERID=SYSDBA/SYSDBA@localhost:5237 DIRECTORY=/dmbak FILE=full_exp.dmp LOG=imp.log FULL=Y ``` --- ### **关键注意事项** 1. **文件路径权限** 确保`dmdba`用户对新库目录(如`/dm8/data/DAMENG_NEW`)有读写权限 2. **备份集完整性验证** 恢复前建议检查备份有效性: ```bash ./dmrman CHECK BACKUPSET '/dmbak/DB_FULL_20231001' ``` 3. **字符集兼容性** 若新旧库字符集不同,导入时需指定转换参数: ```bash ./dimp ... CHAR_CODE=源字符集→目标字符集 # 如 GBK→UTF8 ``` --- ### **恢复后验证** ```sql -- 检查表数量一致性 SELECT COUNT(*) FROM DBA_TABLES; -- 随机抽样数据校验 SELECT * FROM 重要业务表 SAMPLE(100); ``` > **引用说明**: > - 物理恢复路径需绝对路径且备份必须在本地存储(引用[2]) > - `UPDATE DB_MAGIC`是恢复完成的必要操作(引用[2]技术文档) > - 脱机备份需通过`dm.ini`定位数据库(引用[3]备份方法) ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值