表空间操作的一些总结

本文总结了Oracle数据库中关于表空间的操作,包括数据文件的离线drop、表空间的四种脱机选项(normal、temporary、immediate、for recover)。详细解释了各种操作的适用场景和影响,例如immediate选项需要介质恢复才能联机,normal和temporary选项在不同错误状态下的处理。还展示了查询表空间状态的SQL语句。
摘要由CSDN通过智能技术生成

1、alter database datafile xxx offline drop;    //该命令把数据文件至于离线recover状态,不会删除文件、字典中的信息也不会被删,需要恢复recover(非归档下,只要online log没被覆盖,要快,归档需要日志连续)

2、alter tablespace xxx drop datafile 'xxx' ;    //该语句只能在数据文件处于online情况下使用,并且数据文件要是非空,它会删除磁盘上的文件与控制文件中的记录。

3、表空间脱机的四种选项normal(默认)、temporary(临时)、immediate(立即)、for recover

(1)Normal(正常):如果表空间中的任何数据文件不存在任何错误状态,通过正常方式便可使表空间脱机。当 Oracle 数据库使表空间脱机时,通过对表空间中的所有数据文件设置检查点,可以确保将所有数据写入磁盘。

(2)Temporary(临时):如果表空间中的一个或多个文件存在错误状态,也可以使表空间暂时脱机。当 Oracle 数据库使(尚未脱机的)数据文件脱机时,会对这些数据文件设置检查点。如果没有任何文件脱机,但是您使用了临时子句,使表空间重新联机时便不需要执行介质恢复。但是,如果因写错误而导致表空间的一个或多个文件脱机,而且设置了表空间临时脱机,那么表空间需要执行恢复后才能重新联机。

(3)Immediate(立即):表空间可以立即脱机,Oracle 数据库不需要对任何数据文件设置检查点。如果指定了“Immediate(立即)”,则必须先对表空间执行介质恢复 recover tablespace ,才能使表空间联机。如果数据库在 NOARCHIVELOG 模式下运行,则无法立即使表空间脱机.

    下面的情况,需要先把所有数据文件状态recover的recover,使其状态offline,然后使其online,最后online SDE表空间

SQL> select t.file#,t.name,t.status from v$tablespace d,v$datafile t where d.TS#=t.TS# and d.name='SDE';


     FILE# NAME                                     STATUS
---------- ---------------------------------------- -------
         5 E:\SDE.DBF                               RECOVER
        35 J:\SDE_DATA_PLACE\PY_SDE4                OFFLINE
        34 E:\SDE_4                                 RECOVER
        17 E:\SDE3                                  RECOVER
        13 E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SD OFFLINE
           E2.DBF

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值