您的位置:首页 > 数据库

根据冷备份恢复数据库操作流程

2015-10-21 09:29 253 查看
建议:

1.目标数据库最好和源数据库安装路径一致,减少很多不必要的问题。
2.目标数据库和源数据库的版本和位数最好要一致,不然会要进行worldsize转码,会浪费很多的时间,目前不知道会留下什么后患。

1.关闭数据库
shutdownimmediate
2.将冷备份的数据拷贝到目标数据库中
/oradata/orcl->/oradata/orcl
3.启动数据库
startup



两个控制文件不匹配
4.需要将冷备份的控制文件拷贝到目标目录
5.shutdownimmediate
6.启动数据库
startup



7.通过
select archiver from v$instance;和 selectlog_mode from v$database;
可以发现没有开启归档模式。



8.通过追踪文件
app/Administrator/diag/rdbms/orcl/orcl/trace/alert_orcl.log
发现改文件不存在,是因为冷备份的数据库是存放在C盘的,而新建的数据库是建立在D盘的。目前面临两种选择,1、重建控制文件;2、重建数据库,将环境设置和源数据库一样。
9.尝试重建控制文件
9.1启动数据库,不挂载
STARTUPNOMOUNT
9.2建立一个sql脚本
CREATECONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 2272
LOGFILE
GROUP 1'D:/app/Administrator/oradata/orcl/redo01.log' SIZE 50M,
GROUP 2'D:/app/Administrator/oradata/orcl/redo02.log' SIZE 50M,
GROUP 3'D:/app/Administrator/oradata/orcl/redo03.log' SIZE 50M
--STANDBY LOGFILE
DATAFILE
'D:/app/Administrator/oradata/orcl/system01.dbf',
'D:/app/Administrator/oradata/orcl/undotbs01.dbf',
'D:/app/Administrator/oradata/orcl/sysaux01.dbf',
'D:/app/Administrator/oradata/orcl/users01.dbf',
'D:/app/Administrator/oradata/orcl/example01.dbf'
CHARACTERSET ZHS16GBK
;
9.3通过调用脚本重建控制文件
@D:\createContorller.sql



9.4shutdown immediate
9.5startup



9.6通过 select file# from v$recover_file;可以看出,所有的DBF文件都有问题,怀疑是控制文件出现了问题,所以查看控制文件,发现不是控制文件的问题。
这一步发现 system01文件是损坏的
9.7通过 recover datafile 1-5将这些文件修复
9.8启动数据库,提示丢失表空间,将目标库中的表空间复制到数据库中,继续修复文件。
9.9启动数据库.
10.1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: