数据库还原之指定映射路径还原

数据库还原后的数据文件默认生成到还原目标库的路径下,如果用户想生成数据文件到特定的路径,就需要指定映射文件参数来实现。

映射文件(MAPPED FILE)用于指定存放还原目标路径,即备份集里面的数据文件的路径,可以手动修改自动生成的映射文件。当参数 BACKUPSET 和 MAPPED FILE 指定的路径不一致时,以 MAPPED FILE 中指定的路径为主。映射文件可用于库级脱机还原和表空间还原,使用 DUMP 命令可以将指定备份集还原目标信息生成到目标映射文件中,该文件可被重新编辑后,用于数据库的还原过程。

01

指定映射路径还原步骤

下面以整库还原为例说明使用映射路径还原的具体步骤。

1、关闭数据库,启动 RMAN,脱机备份数据库

[dmdba@localhost bin]$./DmServiceGZ stop[dmdba@localhost bin]$./dmrmanBACKUP DATABASE  '/dameng/data/GZ/dm.ini' BACKUPSET  '/dameng/data/GZ/bak/db_bak_for_map_01';

2、生成映射文件 map_file_01.txt 至/home/dm_mapfile 目录。

此处指定生成映射文件中的数据文件路径与数据库/dameng/data2/DAMENG/ 中的数据文件一致。若不指定,与备份集中的源数据库的数据文件路径一致。

DUMP BACKUPSET  '/dameng/data/GZ/bak/db_bak_for_map_01'  DATABASE  '/dameng/data2/DAMENG/dm.ini'  MAPPED FILE '/dameng/map_file_02.txt';

生成的映射文件内容如下:​​​​​​​

/**************************************************************//*** Delete the unnecessary modified groups **//*** Modify the data_path or mirror_path only in one group **//**************************************************************//**=============================================================**//*[DAMENG_SYSTEM_FIL_0]*/fil_id = 0ts_id = 0ts_name = SYSTEMdata_path = /dameng/data/DAMENG/SYSTEM.DBFmirror_path =/**=============================================================**//*[DAMENG_ROLL_FIL_0]*/fil_id = 0ts_id = 1ts_name = ROLLdata_path = /dameng/data/DAMENG/ROLL.DBFmirror_path =/**=============================================================**//*[DAMENG_MAIN_FIL_0]*/fil_id = 0ts_id = 4ts_name = MAINdata_path = /dameng/data/DAMENG/MAIN.DBFmirror_path =/***************************** END ****************************/

如果需要恢复数据文件或镜像文件到指定路径,可手动编辑映射文件中表空间对应的data_path 属性。例如,要还原 MAIN 表空间中的数据文件 MAIN.DBF 到/home/dm_dbf路径下,修改组 DAMENG_MAIN_FIL_0 的内容如下:​​​​​​​

/*[DAMENG_MAIN_FIL_0]*/fil_id = 0ts_id = 4ts_name = MAINdata_path = /home/dm_dbf/MAIN.DBF

3、指定映射文件还原。还原前可选择对备份文件进行校验。

这里为了把三个表空间映射到三个地方故把map_file_01.txt中的data_path 分别改为如下路径:​​​​​​​

data_path      = /dameng/data3/DAMENG/SYSTEM.DBFdata_path      = /dameng/data4/DAMENG/ROLL.DBFdata_path      = /dameng/data5/DAMENG/MAIN.DBF

4、数据库还原并更新db_magice。​​​​​​​

RESTORE DATABASE '/dameng/data2/DAMENG/dm.ini' FROM BACKUPSET '/dameng/data/GZ/bak/db_bak_for_map_01' MAPPED FILE '/dameng/map_file_01.txt';RECOVER DATABASE '/dameng/data2/DAMENG/dm.ini' UPDATE DB_MAGIC;

02

查看数据库文件的路径

启动数据库,就会看到同一个库的表空间分别再不同的目录下。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值