a.控制文件丢失
-----一般情况
1.alter database backup controlfile to '/backup...';
2.ho rm -rf 所有的控制文件 startup force
3.ho cp 从备份的控制文件恢复到原位置
4.介质恢复
recover database using backup controlfile
--------修改数据库结构(比如新建了表空间)丢失控制文件
1.alter database backup controlfiel to ..
2.create tablespace datafile '' size.. create table tablespace
并在新建的表空间上建表
3.ho rm -rf所有的控制文件 startup force
4.ho cp
5.介质恢复提示 not started
因为备份控制文件中没有新建表空间的信息
select name,status from v$datafile;
alter database create datafile '' as '/oracle/app/oracle/oradata/orcl/..';
再使用介质恢复即可
-------------修改数据库后脱机或者表空间只读
1.备份
alter database backup conterolfile to trace as ...
2.create tablkesoace 并建表
alter tablespace read only
3.ho rm -rf 删除所有的控制文件 startup
4.利用备份建立控制文件
alter databse open;
select nbame,status from v$datafile
发现一个数据文件名字不对,重命名
alter database rename file '' to 'oracle/app/oracle..'
alter tablespace online
aletr tablespace read wirite
b.丢失日志组(非当前组)
1.desc v$log
select group#,sequence#,archived,status from v$log
删除一个费当前组 redo02.log
startup
alter database clear unarchived logfile grpoup2 ;
即可
c.归档模式丢失系统表空间
1.alter tablespace system begin backup
2.ho cp
3.alter tablespace system end backup
4.create table t
在系统表空间上建表 并切换日志
alter system switch logfile
/
/
5.ho rm -rf startup force
6.ho cp 恢复system01.dbf
7.recover datafile 1
选择auto
8.aletr database open;