您的位置:首页 > 其它

没有备份、只有归档日志,如何恢复数据文件?

2008-04-27 23:41 841 查看
没有备份只有归档日志,如何恢复数据文件
系统环境:
1、:Server,机器内存128M
2、: 8iR2(8.1.6)forNT企业版
3、安装路径:C:/ORACLE
模拟现象:
可通过重建数据文件来恢复,前提是归档日志文件保存完整先将数据库设置为归档模式SQL*Plusconnsystem/manager--创建实验表空间createtablespacetestdatafile'c:/test.ora'size5MAUTOEXTENDONNEXT1MMAXSIZEUNLIMITEDdefaultstorage(initial128Knext1Mpctincrease0)/--创建实验用户dropusertestcascade;createusertestidentifiedbytestdefaulttablespacetest;grantconnect,resourcetotest;conntest/testcreatetablea(anumber);insertintoavalues(1);insertintoaselect*froma;--反复插入,达到100万条commit;--关闭数据库SVRMGR>connectinternalSVRMGR>altersystemswitchlogfile;--强制归档SVRMGR>altersystemswitchlogfile;SVRMGR>altersystemswitchlogfile;SVRMGR>shutdown--操作系统下删除test.ora文件--重新启动数据库SVRMGR>connectinternalSVRMGR>startup这时,可以mount上,但无法打开,因为数据文件test.ora不存在,显示错误如下:ORA-01157:????/??????8-???DBWR????ORA-01110:????8:'C:/TEST.ORA'SVRMGR>connectinternalSVRMGR>startupmountSVRMGR>alterdatabasecreatedatafile'c:/test.ora';SVRMGR>setautorecoveryonSVRMGR>recoverdatafile'c:/test.ora';SVRMGR>alterdatabaseopen;conntest/testselectcount(*)froma;--数据又恢复到100万条--删除实验表空间connsystem/manageraltertablespacetestoffline;droptablespacetestINCLUDINGCONTENTS;dropusertest;--如果是非归档模式,也可以运用以上方法,--前提是:输入记录所占空间的大小不超过所有联机日志文件的大小--即:用联机日志文件来恢复
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: