ablog

不器用で落着きのない技術者のメモ

一時表領域障害からのリカバリ手順

$ cd /home/oracle
# 「control.trc」はあらかじめ「alter database backup controlfile to trace as ...」で取得しておいた論理バックアップ
$ cp control.trc create_tempfile.sql 
# 「Set #1. NORESETLOGS case」の「ALTER TABLESPACE TEMP ADD TEMPFILE ...;」以外の行を削除する
$ vi create_tempfile.sql 
$ cat create_tempfile.sql
ALTER DATABASE TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf' DROP; -- この行を追加する。
ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
     SIZE 20971520  REUSE AUTOEXTEND ON NEXT 8192  MAXSIZE 32767M;
  • 一時ファイルを再作成する。
$ sqlplus / as sysdba
SQL> @create_tempfile.sql