模拟在没有备份的情况下如何将一个数据文件从offline状态变成online状态,并且可以正常使用。
1、创建表空间t1和test:
create tablespace t1 datafile '/u01/oradata/orcl/t1.dbf' size 1M;
create tablespace test datafile '/u01/oradata/orcl/test01.dbf' size 10m;
2、创建一个分区表,包含两个分区,分别使用test和t1表空间
create table t1(id int,name varchar2(30))
partition by list(id)
(
partition t1 values(1) tablespace test,
partition t2 values(2) tablespace t1
)
;
3、向表中插入数据
insert into t1 values(1,'aa');
insert into t1 values(2,'bb');
commit;
4、offline数据文件t1.dbf
alter database datafile '/u01/oradata/orcl/t1.dbf' offline;
5、此时修改表结构,添加字段
ALTER TABLE T1 ADD SHIJIAN DATE;
ALTER TABLE T1 MODIFY SHIJIAN DATE DEFAULT SYSDATE;
INSERT INTO T1 VALUES(1,'CC',sysdate);
6、多次切换redo,后删除所有archivelog文件