日期:2014-05-16 浏览次数:20492 次
1、对一个datafile执行offline或offline drop本质上是一回事,但对一个datafile执行offline只能在归档模式下;而对一个datafile执行offline drop则既可以在归档模式也可以在非归档模式下;
?
2、对一个datafile无论是执行offline还是offline drop,都是只改写了control文件,不会更新file$和ts$,这就是为什么可以在mount状态下对某个datafile执行offline/offline drop的本质原因;
?
3、只有当对datafile所在的表空间执行offline normal的时候,才会既改写control文件,又更新ts$和seg$,oracle这里会把ts$的online$字段的值由1改为2,但依然不会去更新file$;
?
4、只有当对datafile所在的表空间执行drop操作的时候,oracle才会去更新ts$和file$,oracle这里会把ts$的online$字段的值由1改为3,会把file$的status$字段由2改为1;
注意,无论是file$的file#还是ts$的ts#,它们都是连续的!并且oracle会重用file$的file#,但是不会重用ts$里的ts#,这本质上是因为ts$里会记录tablespace的名字,而file$里并没有记录datafile的名字,所以file$里的记录可以重用而ts$则不能。
?
5、只要你对一个datafile执行了offline或者offline drop操作,则oracle在open的时候就不会去存储上(无论是文件系统、裸设备还是ASM)校验这个文件了,所以即使这个文件已经在存储上被删掉了,此时库依然可以open。
?
????? 1、在ARCHIVRLOG模式下的更改DataFile状态
ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/stuff01.dbf' ONLINE;
2、在NOARCHIVELOG模式下使DataFile脱机(意味着数据丢失,必须加drop)
?ALTER DATABASE DATAFILE '/u02/oracle/rbdb1/users3.dbf' OFFLINE DROP;
二.表空间与数据文件 脱机的区别
1. ALTER TABLESPACE ... OFFLINE(Does a checkpoint on the datafiles )
?
Takes the datafiles offline
表空间Offline时,数据文件的SCN会被冻结,而且表空间的数据文件offline/online时又会发生文件检查点,使单个数据文件SCN和数据库其他问题不一致。
表空间online时,Oracle会取得当前SCN,解冻offline文件SCN,和当前SCN同步;tablespace offline有几种选项可供选择normal, temporary,immediate
2. ALTER DATABASE DATAFILE ... OFFLINE
单纯的offline datafile,将不会触发文件检查点,只有针对offline tablespace的时候才会触发文件检查点,这也是为什么online datafile需要media recovery而online tablespace不需要。
?
?
?
?
There is a big difference between:
Taking the tablespace offline and Taking the datafiles offline
ALTER TABLESPACE ... OFFLINE
Does a checkpoint on the datafiles?
Takes the datafiles offline
ALTER DATABASE DATAFILE ... OFFLINE
Does not perform. a checkpoint,
So that if the database is open, you may need to perform. media recovery when bringing it online.
That is the reason why:
You cannot do 'alter database datafile ... offline' if you are in noarchivelog (but tablespace offline works)?
You cannot do 'alter tablespace ... offline' if database is read-only (but datafile offline works)