发布网友 发布时间:2022-04-22 00:14
共1个回答
热心网友 时间:2023-10-01 20:28
系统环境 操作系统 Windows Server 机器内存 M 数据库 Oracle i R ( ) for NT 企业版 安装路径 C:\ORACLE 模拟现象 可通过重建数据文件来恢复 前提是归档日志文件保存完整 先将数据库设置为归档模式 SQL*Plus conn system/manager 创建实验表空间 create tablespace test datafile c:\test ora size M AUTOEXTEND ON NEXT M MAXSIZE UNLIMITED default storage (initial K next M pctincrease ) / 创建实验用户 drop user test cascade; create user test identified by test default tablespace test; grant connect resource to test; conn test/test create table a(a number); insert into a values( ); insert into a select * from a; 反复插入 达到 万条 mit; 关闭数据库 SVRMGR> connect internal SVRMGR> alter system switch logfile; 强制归档 SVRMGR> alter system switch logfile; SVRMGR> alter system switch logfile; SVRMGR> shutdown 操作系统下删除test ora文件 重新启动数据库 SVRMGR> connect internal SVRMGR> startup 这时 可以mount上 但无法打开 因为数据文件test ora不存在 显示错误如下 ORA : ????/?????? ??? DBWR ???? ORA : ???? : C:\TEST ORA SVRMGR> connect internal SVRMGR> startup mount SVRMGR> alter database create datafile c:\test ora ; SVRMGR> set autorecovery on SVRMGR> recover datafile c:\test ora ; SVRMGR> alter database open; conn test/test select count(*) from a; 数据又恢复到 万条 删除实验表空间 conn system/manager alter tablespace test offline; drop tablespace test INCLUDING CONTENTS; drop user test; 如果是非归档模式 也可以运用以上方法 前提是 输入记录所占空间的大小不超过所有联机日志文件的大小 即 用联机日志文件来恢复 lishixin/Article/program/Oracle/201311/18468