环境:
操作系统:银河麒麟V10 SP3 X86_64
达梦数据库:V8 458764
开启归档:
创建测试表:
全库联机备份:
模拟故障:
停止数据库模拟SYSTEM.DBF文件损坏
整库还原:
1、校验数据库备份集
2、数据库整库还原。
还原报错,提示SYSTEM.DBF文件不存在。
查看doc目录下的《DM8备份与还原》PDF文档,发现RESTORE命令有2个restore_type选项:
type1选项:
指定 dm.ini 还原,要求 dm.ini 中 CTL_PATH 必须配置正确,且内容有效;除 dm.ini 文件外,其他文件均可不存在;解析 dm.ini 配置文件,获取 dm.ctl 控制文件路径,删除控制文件中的数据文件,然后根据 OVERWRITE 选项,如果指定 OVERWRITE 选项,若待还原文件存在,则删除重建;如果未指定 OVERWRITE 选项,若待还原文件存在,则报错,但保留目标库的日志文件、控制文件等。
type2选项:
所有文件均可不在,system.dbf 所在路径需为有效路径,若不存在,restore
过程中会自动创建;所有前面提到的数据库配置文件均会在指定的 system.dbf 所在路径还原;若未指定 OVERWRITE,且 system.dbf 所在路径中存在待还原的库配置文件,则报错;若指定,则将已经存在的文件删除重建。
尝试使用type2选项还原:
提示文件已存在,使用OVERWRITE选项
3、数据库恢复
4、更新 DB_MAGIC
启动数据库验证测试表:
总结:
根据PDF文档描述type1选项除 dm.ini 文件外,其他文件均可不存在就可以还原,但是在测试过程中还原失败,难道是我使用RESTORE命令的选项有问题,希望有知道的大佬不吝赐教,使用type2选项相当于是把所有文件都重建了。
文章
阅读量
获赞