oracle文件怎么删除,Oracle删除数据文件

SQL> select file_name,file_id from dba_data_files where tablespace_name='TEST';

FILE_NAME FILE_ID

------------------------------ ----------

/oradata/june/test.dbf 6

/oradata/june/test1.dbf 9

/oradata/june/test2.dbf 10

SQL> select distinct owner,segment_name from dba_Extents where FILE_ID=6;

OWNER SEGMENT_NAME

------------------------------ --------------------

TEST EMPLOYEES

TEST ORDERS

TEST BFW_TEST

TEST B1

TEST STRACE

TEST T1

TEST TEST

TEST SYS_C0011275

TEST TEST2

TEST A2

TEST HOTEL

OWNER SEGMENT_NAME

------------------------------ --------------------

TEST EMP2

TEST T

TEST IDX_T

已选择14行。

SQL> select distinct owner,segment_name from dba_Extents where FILE_ID=9;

OWNER SEGMENT_NAME

------------------------------ --------------------

TEST T10

TEST T500

TEST B1

TEST DEPT

TEST EMP3

TEST A1

TEST IDX_EMP_EMPNO

TEST T100

TEST T1

TEST EMP_1

TEST EMP

OWNER SEGMENT_NAME

------------------------------ --------------------

TEST DUPES

TEST TEST3

TEST DEPT_1

TEST IDX_EMP_ENAME

TEST PK_DEPT

TEST KEY

已选择17行。

可以看到表T1 在数据文件6,9中有

SQL> select count(*) from t1;

COUNT(*)

----------

72607

SQL> alter tablespace test drop datafile '/oradata/june/test1.dbf' ;

alter tablespace test drop datafile '/oradata/june/test1.dbf'

*

第 1 行出现错误:

ORA-03262: 文件非空

可以看到,只有非空的数据文件才能进行删除,已经写入数据的数据文件不能进行删除。

尝试

alter database datafile '/oradata/june/test1.dbf' offline drop

SQL> alter database datafile '/oradata/june/test1.dbf' offline drop;

数据库已更改。

SQL> select count(*) from t1;

select count(*) from t1

*

第 1 行出现错误:

ORA-00376: 此时无法读取文件 9

ORA-01110: 数据文件 9: '/oradata/june/test1.dbf'

/oradata/june/test1.dbf数据文件中有t1表的数据

SQL> recover datafile 9;

完成介质恢复。

SQL> alter database datafile '/oradata/june/test1.dbf' online;

数据库已更改。

SQL> select count(*) from t1;

COUNT(*)

----------

72607

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值