Welcome 微信登录

首页 / 数据库 / MySQL / Oracle临时表空间的恢复

查询Oracle临时表空间的状态:SQL> select f.file#,t.ts#,f.name,t.name from v$tempfile f,v$tablespace t where f.ts#=t.ts#;FILE#TS# NAME NAME---------- ---------- -------------------------------------------------------------------------------- ------------------------------ 13 /opt/oracle/app/oracle/oradata/zydev/temp01.dbfTEMP 删除对应的临时表数据文件SQL> !rm -rf /opt/oracle/app/oracle/oradata/zydev/temp01.dbf恢复的两种情况:1.重启数据库,临时表空间将自动建立生成SQL> shutdown immediate数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startupORACLE 例程已经启动。Total System Global Area776646656 bytesFixed Size2217384 bytesVariable Size574622296 bytesDatabase Buffers192937984 bytesRedo Buffers6868992 bytes数据库装载完毕。数据库已经打开。查看日志文件可以看见:Re-creating tempfile /opt/oracle/app/oracle/oradata/zydev/temp01.dbf2.数据库开启的状态下恢复SQL> !rm -rf /opt/oracle/app/oracle/oradata/zydev/temp01.dbfSQL> alter tablespace temp add tempfile2"/opt/oracle/app/oracle/oradata/zydev/temp02.dbf"3size 30M;表空间已更改。SQL> alter tablespace temp drop tempfile2"/opt/oracle/app/oracle/oradata/zydev/temp01.dbf";表空间已更改。SQL> select f.file#,t.ts#,f.name,t.name from v$tempfile f,v$tablespace t where f.ts#=t.ts#;FILE#TS# NAME NAME---------- ---------- -------------------------------------------------------------------------------- ------------------------------ 23 /opt/oracle/app/oracle/oradata/zydev/temp02.dbfTEMP本文永久更新链接地址