达梦数据库在备份完如何通过.bak文件恢复备份

目录

一、开启归档

二、恢复备份


一、开启归档

注意:如果想要恢复备份或者定时备份,都要先开启归档,这部分可以参照我另外一篇文章。

达梦数据库开启归档模式-CSDN博客

首先在库中输入一条语句查看你是否开启了归档:

select arch_mode from v$database;

如果结果为Y,则代表已经开启。

二、恢复备份

假如我们早上2024-12-11 09:37:00备份的文件,备份的文件如下:

我们现在是2024-12-11的下午,由于误操作将某个表删了,或者把某条重要数据删了,我们想恢复,该如何操作?

首先我们使用shutdown immediate命令来关闭数据库,因为恢复备份需要关闭数据库。

然后需要借助dmrman工具对数据库执行备份还原:

双击dmrman.exe打开。

依次输入以下三条命令:

restore database 'E:\hljpt\dmdbms\data\DAMENG\dm.ini' from backupset 'C:\Users\Administrator\Desktop\bak\DB_DAMENG_FULL_2024_12_11_09_37_00';

recover database 'E:\hljpt\dmdbms\data\DAMENG\dm.ini' with archivedir 'C:\Users\Administrator\Desktop\bak' until time '2024-12-11 09:36:00';

recover database 'E:\hljpt\dmdbms\data\DAMENG\dm.ini' update db_magic;

注意:C:\Users\Administrator\Desktop\bak\DB_DAMENG_FULL_2024_12_11_09_37_00是我存放备份文件的目录。而C:\Users\Administrator\Desktop\bak是我归档的目录。

第二条命令的2024-12-11 09:36:00时间点为恢复的时间点,代表我要回复到2024-12-11 09:36:00这时候的状态。

如果执行中没发现错误,则重启数据库服务即可。

<think>嗯,用户问的是达梦数据库备份文件能不能用来恢复另一个数据库,也就是跨库还原是否支持。首先,我需要回忆一下达梦数据库备份恢复机制。根据引用里的内容,达梦的备份文件包含特定数据库的数据结构和配置息,比如表空间、用户权限这些,这些息是和原数据库绑定的。 然后,用户提到的“另一个数据库”可能是指不同名称或者不同结构的数据库。这时候直接使用原备份文件可能会有问题,因为比如数据库名不同的话,恢复的时候可能需要调整参数。不过引用2提到,还原的时候可以指定目标数据库名,所以可能有一定的灵活性。 但是,需要注意的是,即使能改名,如果目标数据库的结构(比如表空间路径、用户权限等)和备份文件里的不一致,可能会导致恢复失败。例如,原备份里的表空间路径如果在目标机器上不存在,恢复就会出问题。这时候可能需要手动调整路径或者结构。 另外,跨版本的问题也可能存在。如果备份是高版本的达梦数据库做的,而目标数据库是低版本的,可能不支持恢复。通常数据库都是向下兼容,但向上不一定。 所以综合来看,达梦的备份文件理论上可以用于其他数据库,但需要满足一些条件,比如数据库结构兼容、版本匹配,并且在恢复时指定正确的参数。如果结构差异大,可能需要先调整目标库的结构,或者使用迁移工具来辅助。 用户可能是在考虑备份文件的可移植性,比如想用备份来复制数据库到另一个环境,或者作为容灾手段。这时候需要指导他们正确操作,避免直接还原导致的问题。此外,可能还需要提醒用户测试备份文件在目标环境中的恢复情况,确保万无一失。</think>达梦数据库备份文件**不支持直接用于跨库还原**,但在特定条件下可通过技术手段实现类似效果。以下是关键要点分析: 1. **备份文件特性限制** 达梦数据库备份文件($*.bak$)包含整的数据库元数据和物理文件结构,其与源数据库的DB_MAGIC标识、表空间配置、用户权限等核心息绑定[^2]。若目标数据库的物理结构(如表空间路径)或逻辑结构(如用户体系)不一致,直接还原会导致失败。 2. **跨库还原的实现条件** 满足以下条件时可尝试迁移: - 目标库与源库**版本严格一致** - 表空间路径、页大小等核心参数全匹配 - 使用`RESTORE`命令时指定`SKIP_CHECK_DBNAME`参数跳过库名验证 例如: ```sql RESTORE DATABASE '新库名' FROM '/backup/dameng_full_2023.bak' SKIP_CHECK_DBNAME; ``` 3. **推荐替代方案** - 使用逻辑导出工具`dexp/dimp`实现跨库迁移 - 通过达梦管理工具DTS执行异构迁移 - 建同构空库后执行物理备份还原
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Calvad0s

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值