前提: RMANバックアップなし
誤って削除したデータファイルをないものとしてDB起動する
データベースがマウントされました。
ORA-01157: データファイル10を識別/ロックできません - DBWRトレース・ファイルを参 照してください ORA-01110: データファイル10:
'/oradata/orcl/tbs1.dbf'
alter database backup controlfile to trace as '/home/oracle/control.txt' reuse;
Set #1. NORESETLOGS case
記載のCREATE CONTROLFILE から対象外としたいデータファイルを削除して実行
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 1024
MAXINSTANCES 1
MAXLOGHISTORY 292
LOGFILE
GROUP 1 (
'/oradata/orcl/redo01a.log',
'/oradata/orcl/redo01b.log'
) SIZE 100M BLOCKSIZE 512,
GROUP 2 (
'/oradata/orcl/redo02a.log',
'/oradata/orcl/redo02b.log'
) SIZE 100M BLOCKSIZE 512,
GROUP 3 (
'/oradata/orcl/redo03a.log',
'/oradata/orcl/redo03b.log'
) SIZE 100M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
'/oradata/orcl/system01.dbf',
'/oradata/orcl/pdbseed/system01.dbf',
'/oradata/orcl/sysaux01.dbf',
'/oradata/orcl/pdbseed/sysaux01.dbf',
'/oradata/orcl/undo01.dbf',
'/oradata/orcl/pdbseed/undo01.dbf',
'/oradata/orcl/deftbs01.dbf',
'/oradata/orcl/pdbseed/deftbs01.dbf',
'/oradata/orcl/pdbseed/usertbs01.dbf',
---- '/oradata/orcl/tbs1.dbf',
'/oradata/orcl/pdb11/system01.dbf',
'/oradata/orcl/pdb11/sysaux01.dbf',
'/oradata/orcl/pdb11/undo01.dbf',
'/oradata/orcl/pdb11/deftbs01.dbf',
'/oradata/orcl/pdb11/usertbs01.dbf'
CHARACTER SET AL32UTF8
;
RECOVER DATABASE
ALTER SYSTEM ARCHIVE LOG ALL;
ALTER DATABASE OPEN;
ALTER PLUGGABLE DATABASE ALL OPEN;
ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata/orcl/temp01.dbf' REUSE;
ALTER SESSION SET CONTAINER = "PDB$SEED";
ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata/orcl/pdbseed/temp01.dbf' REUSE;
ALTER SESSION SET CONTAINER = "PDB11";
ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata/orcl/pdb11/temp01.dbf' REUSE;
ALTER SESSION SET CONTAINER = "CDB$ROOT";
drop tablespace tbs1 including contents and datafiles;