龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

用LEGATO恢复数据(1)

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
我单位一台SUN 450服务器,安装了Oracle8数据库的磁盘损坏,需要更换新盘,重新安装Oracle数据库和备份软件,并从备份服务器上进行恢复。查看原来的数据存放环境,检查字典视图RC_DATAF

我单位一台SUN 450服务器,安装了Oracle8数据库的磁盘损坏,需要更换新盘,重新安装Oracle数据库和备份软件,并从备份服务器上进行恢复。查看原来的数据存放环境,检查字典视图RC_DATAFILE,数据文件的存放位置知道了如果这个目录不存在,系统会要求用户创建该目录,否则数据文件无法恢复。
全库恢复
目录建完后,开始进行数据库的全库恢复:
a) 恢复控制文件

   $sqlplus internal
$sql>startup nomount

然后手工执行如下脚本以恢复控制文件:
run
{ allocate channel c1 type 'sbt_tape';
allocate channel c2 type 'sbt_tape';
restore controlfile;
alter database mount;
release channel c1;
release channel c2;
}
控制文件恢复成功。
b) 还原数据库
把启动数据库在mount状态,执行脚本如下:

    run{
allocate channel d1 type 'SBT_TAPE';
allocate channel d2 type 'SBT_TAPE';
restore database;
sql "alter database open";  
release channel d1;
release channel d2;
}

数据库数据文件恢复成功。
c) 恢复归档日志
恢复归档日志,执行如下脚本

   run{
allocate channel d1 type 'SBT_TAPE';
allocate channel d2 type disk;
restore
(archivelog all);
release channel d1;
release channel d2;
}

精彩图集

赞助商链接