Note_Tech

All technological notes.


Project maintained by simonangel-fong Hosted on GitHub Pages — Theme by mattgraham

Recovery - Complete Recovery: ARCHIVELOG Mode - CDB

Back


Loss of a noncritical data file


Lab: Recover from the loss of SYSTEM datafile in CDB

# remove system df from CDB
rm '/u01/app/oracle/oradata/ORCL/system01.dbf'
-- connect
connect system
-- ERROR:
-- ORA-00604: error occurred at recursive SQL level 1
-- ORA-01116: error in opening database file 1
-- ORA-01110: data file 1: '/u01/app/oracle/oradata/ORCL/system01.dbf'
-- ORA-27041: unable to open file
-- Linux-x86_64 Error: 2: No such file or directory
-- Additional information: 3


Solution: Complete Recovery using RMAN

rman target /

SHUTNDOWN ABORT
STARTUP MOUNT
-- restore and recover system01.dbf
RESTORE DATAFILE 1;
RECOVER DATAFILE 1;

-- Open db
ALTER DATABASE OPEN;

lab_complete_recovery_cdb01 lab_complete_recovery_cdb01

sqlplus /nolog
connect system
show con_name
show user

lab_complete_recovery_cdb01


Solution: Complete Recovery using DRA

sqlplus / as sysdba
select username from dba_users;
-- select username from dba users
                     *
-- ERROR at line 1:
-- ORA-00604: error occurred at recursive SQL level 1
-- ORA-01116: error in opening database file 1
-- ORA-01110: data file 1: '/u01/app/oracle/oradata/ORCL/system01.dbf'
-- ORA-27041: unable to open file
-- Linux-x86_64 Error: 2: No such file or directory
-- Additional information: 3

lab_complete_recovery_cdb

lab_complete_recovery_cdb

rman target /
shutdown abort
startup mount

LIST FAILURE;
ADVISE FAILURE;
-- generate a script with all repair actions and comments.
REPAIR FAILURE PREVIEW;
-- repair database failures
REPAIR FAILURE;
-- will ask whether open the db

lab_complete_recovery_cdb lab_complete_recovery_cdb lab_complete_recovery_cdb lab_complete_recovery_cdb lab_complete_recovery_cdb

sqlplus /nolog
connect system
show con_name
show user

lab_complete_recovery_cdb


Loss of a critical data file


Lab: Recover from the loss of non-critical datafile in CDB

# remove user df from CDB
rm '/u01/app/oracle/oradata/ORCL/users01.dbf'

Solution: Complete Recovery using RMAN

-- query and create user can be executed.
SELECT username FROM cdb_users;
rman target /
ALTER TABLESPACE users OFFLINE IMMEDIATE;

-- rman
RESTORE DATAFILE 7;
RECOVER DATAFILE 7;

-- sqlplus
ALTER TABLESPACE users ONLINE;

lab_complete_recovery_cdb

ls -al '/u01/app/oracle/oradata/ORCL/users01.dbf'

Solution: Complete Recovery using DRA

rman target /
LIST FAILURE;
ADVISE FAILURE;
-- generate a script with all repair actions and comments.
REPAIR FAILURE PREVIEW;
-- repair database failures
REPAIR FAILURE;
-- will ask whether open the db

lab_complete_recovery_cdb lab_complete_recovery_cdb lab_complete_recovery_cdb lab_complete_recovery_cdb


TOP