Monday 3 February 2020

LDAP Backup Scripts

#!/bin/bash
#
# version 1.0,

#-------------------------------------------------------------
# directory to backup to
BACKDIR="/backups"
BACKDIR_physical="$BACKDIR/physical"
BACKDIR_logical="$BACKDIR/logical"
#  your LDAP server's name
##SERVER=cadir.nic.in
# date format that is appended to filename
DATE=`date +'%m-%d-%Y-T-%H:%M:%S'`
# your tape device
tape_device=/dev/st0
#tape_device=/dev/null
#DEST=" "
#-------------------------------------------------------------
# Source function library.
. /etc/init.d/functions

#slapd=/usr/sbin/slapd
#slurpd=/usr/sbin/slurpd
#[ -x ${slapd} ] || exit 0
RETVAL=0
LDAPFILES=/var/lib/ldap/

#-------------------Starting LDAP service-----------------------
function start() {
        # Start daemons.
        echo -n "Starting slapd:"
/etc/init.d/ldap start
        #daemon ${slapd}
        RETVAL=$?
        echo
        return $RETVAL
}

#----------------Stop LDAP service-----------------------------
function stop() {
        # Stop daemons.
echo -e "This is a test message"
        echo -e "Shutting down ldap: "
        #killproc ${slapd}
/etc/init.d/ldap stop
        RETVAL=$?
        return $RETVAL
}

function cptotape() {
        # Copying data to Tape.
        echo -n "Please check tape is inserted ..."
  #echo $tape_device
  #echo $DEST
        #tar -vzrf $tape_device $DEST
        echo -n "Copying data to Tape ..."
        echo
        return $RETVAL
}

#----------------------Mail Settings--------------------#
# set to 'y' if you'd like to be emailed the backup (requires mutt)
MAIL=N
# email addresses to send backups to, separated by a space
EMAILS="user@gmail.com user@inbox.com user@walla.com user@goowy.com"
# email subject
SUBJECT="LDAP Backup on $SERVER ($DATE)"
#----------------------FTP Settings--------------------#
# set "FTP=y" if you want to enable FTP backups
FTP=N
# FTP server settings; should be self-explanatory
FTPHOST="ftp.server.com"
FTPUSER="user"
FTPPASS="password"
# directory to backup to. if it doesn't exist, file will be uploaded to
# first logged-in directory
FTPDIR="backups"
#-------------------Deletion Settings-------------------#
# delete old files?
DELETE=N
# how many days of backups do you want to keep?
DAYS=5
#----------------------End of Settings------------------#
# make sure script is run as root
if [ $(whoami) != "root" ]
then
  echo "You must be root to run this script."
  exit 1
fi
# check of the backup directory exists
# if not, create it
if  [ -e $BACKDIR ]
then
echo Backups directory already exists
else
mkdir $BACKDIR
mkdir $BACKDIR_physical
mkdir $BACKDIR_logical
fi

echo Backing up LDAP entries...
if  [ $MAIL = "y" ]
then
BODY="Your backup is ready! "
ATTACH=`for file in $BACKDIR/*$DATE.ldif; do echo -n "-a ${file} ";  done`

echo "$BODY" | mutt -s "$SUBJECT" $ATTACH $EMAILS
     
echo "Your backup has been emailed to you!"
fi
if  [ $FTP = "y" ]
then
cd $BACKDIR
ATTACH=`for file in *$DATE.ldif; do echo -n -e "put ${file}\n"; done`

ftp -nv <<EOF
open $FTPHOST
user $FTPUSER $FTPPASS
cd $FTPDIR
$ATTACH
quit
EOF
fi
if  [ $DELETE = "y" ]
then
find $BACKDIR -name "*.ldif" -mtime $DAYS -exec rm {} \;

if  [ $DAYS = "1" ]
then
echo "Yesterday's backup has been deleted"
else
echo "The backup from $DAYS days ago has been deleted"
fi
fi
#-------------------------------------------------------------
# See how we were called.
case "$1" in
    Physical)
echo "Preparing for offline physical backup"
        DEST=$BACKDIR_physical/ldapbackup-$DATE.tar.gz
stop
[ $RETVAL -eq 0 ] && tar cvzf $DEST ${LDAPFILES}
cptotape
echo "=============================================="
echo $tape_device
echo $DEST
tar rvf $tape_device $DEST
[ $RETVAL -eq 0 ] && start
echo "==============================================="
;;
    Logical)
echo "Preparing for offline Logical backup in LDIF format"
        DEST=$BACKDIR_logical/ldapbackup-$DATE.ldif
slapcat -l  $DEST
cptotape
echo $tape_device
echo $DEST
tar rvf $tape_device $DEST
;;
 
    *)
        echo "Usage: $0 Physical|Logical}"
        RETVAL=1
esac
echo Your backup is complete!

Creation of 2 Node RAC to non RAC DR (12c)


Steps to create 2 node RAC to non RAC physical standby


  • Kindly follow steps to create standby database using url
  • Make changes on RAC using spfile , So it will reflect on both instances.
  • Make changes on  initstdrac file.
  • Add tns entry on both primary and standby on tnsnames.ora file
  • Restart listener and tnsping to check tns entry
  • start standby database in nomount state using pfile
  • Connect rman using Auxiliary db.
  • Duplicate target database for standby nofilenamecheck
  • Start MRP0 process on standby using recover command at session.

  • Copy password file from ASM to local disk 

ASMCMD> pwd
+DATA/rac/PASSWORD
ASMCMD> ls
pwdrac.256.1088276167
ASMCMD> 
ASMCMD> ls
pwdrac.256.1088276167
ASMCMD> pwcopy pwdrac.256.1088276167 /tmp
copying +DATA/rac/PASSWORD/pwdrac.256.1088276167 -> /tmp/pwdrac.256.1088276167
ASMCMD> 
  • Add standby logfile on primary rac instance 

SQL> ALTER DATABASE ADD STANDBY LOGFILE group 5 ('+DATA/RAC/ONLINELOG/redo05.log') size 200M;

Database altered.

SQL> ALTER DATABASE ADD STANDBY LOGFILE group 6 ('+DATA/RAC/ONLINELOG/redo06.log') size 200M;

Database altered.

SQL> ALTER DATABASE ADD STANDBY LOGFILE group 7 ('+DATA/RAC/ONLINELOG/redo07.log') size 200M;

Database altered.
  • Some parameters used for standby creations  we can change same in pfile or dynamically using spfile.
db_unique_name='rac'
alter system set LOG_ARCHIVE_CONFIG='DG_CONFIG=(rac,racdr)' scope=both sid='*';
alter system set LOG_ARCHIVE_DEST_2='SERVICE=racdr LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=racdr' scope=both sid='*';
alter system set fal_server=racdr scope=both sid='*';
alter system set fal_client=rac scope=both sid='*';
alter system set standby_file_management=auto scope=both sid='*';
alter system set log_file_name_convert='/u01/app/oracle/oradata/racdr/','+DATA/RAC' scope=spfile sid='*';
alter system set db_file_name_convert='/u01/app/oracle/oradata/racdr/','+DATA/RAC' scope=spfile sid='*';

SQL> alter system set LOG_ARCHIVE_CONFIG='DG_CONFIG=(rac,racdr)' scope=both;

System altered.

SQL> alter system set LOG_ARCHIVE_DEST_2='SERVICE=racdr LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=racdr' scope=both;

System altered.

SQL> alter system set fal_server=racdr scope=both;

System altered.

SQL> alter system set fal_client=rac scope=both;

System altered.

SQL> alter system set standby_file_management=auto scope=both;

System altered.

SQL> alter system set log_file_name_convert='+DATA/RAC','/u01/app/oracle/oradata/racdr' scope=spfile; sid='*';;

System altered.

SQL> alter system set db_file_name_convert='+DATA/RAC','/u01/app/oracle/oradata/racdr' scope=spfile; sid='*';

System altered.

SQL> 
  • Stop database instance using srvctl command for changes. 
[root@srv1 dbs]# srvctl status database -d rac
Instance rac1 is running on node srv1
Instance rac2 is running on node srv2
[root@srv1 dbs]# srvctl stop  database -d rac
[root@srv1 dbs]# srvctl start  database -d rac
[root@srv1 dbs]# srvctl status  database -d rac
Instance rac1 is running on node srv1
Instance rac2 is running on node srv2
[root@srv1 dbs]# 


  • Pfile parameter entry in instance rac1 (This is information purpose only  you can make both  entry dynamically and static also) 

[oracle@srv1 dbs]$ cat initrac1.ora
rac2.__data_transfer_cache_size=0
rac1.__data_transfer_cache_size=0
rac2.__db_cache_size=1207959552
rac1.__db_cache_size=1191182336
rac2.__java_pool_size=16777216
rac1.__java_pool_size=16777216
rac2.__large_pool_size=33554432
rac1.__large_pool_size=33554432
rac2.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment
rac1.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment
rac2.__pga_aggregate_target=603979776
rac1.__pga_aggregate_target=603979776
rac2.__sga_target=1795162112
rac1.__sga_target=1795162112
rac2.__shared_io_pool_size=83886080
rac1.__shared_io_pool_size=83886080
rac2.__shared_pool_size=436207616
rac1.__shared_pool_size=452984832
rac2.__streams_pool_size=0
rac1.__streams_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/rac/adump'
*.audit_trail='db'
*.cluster_database=true
*.compatible='12.1.0.2.0'
*.control_files='+DATA/RAC/CONTROLFILE/current.273.1020351747','+FRA/RAC/CONTROLFILE/current.261.1020351747'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.db_name='rac'
*.db_unique_name='rac'
*.LOG_ARCHIVE_DEST_2='SERVICE=stdrac LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=stdrac'
*.fal_server=stdrac
*.fal_client=rac
*.standby_file_management=auto
*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(rac,stdrac)'
*.log_file_name_convert='/u01/app/oracle/fast_recovery_area/RAC/onlinelog/','+DATA/RAC/ONLINELOG/'
*.db_file_name_convert='/u01/app/oracle/oradata/RAC/','+DATA/RAC/DATAFILE/'
*.db_recovery_file_dest='+FRA'
*.db_recovery_file_dest_size=4785m
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=racXDB)'
rac2.instance_number=2
rac1.instance_number=1
RAC1.local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.81)(PORT=1521))'
RAC2.local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.82)(PORT=1521))'
*.log_archive_dest_1='LOCATION=+FRA/RAC/ARCHIVELOG'
*.open_cursors=300
*.pga_aggregate_target=570m
*.processes=300
*.remote_listener='srv-scan:1521'
*.remote_login_passwordfile='exclusive'
*.resource_manager_plan=''
*.sga_target=1710m
rac2.thread=2
rac1.thread=1
rac1.undo_tablespace='UNDOTBS1'
rac2.undo_tablespace='UNDOTBS2'
[oracle@srv1 dbs]$

#################################################################################


  • Tnsnames.ora

[oracle@srv1 admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/12.1.0/dbhome_2/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

PRETAF =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = srv-scan.example.com)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = pretaf)
    )
  )


STDRAC =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = srv3.example.com)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = STDRAC)
    )
  )
[oracle@srv1 admin]$

  • Standby Pfile 

[root@srv3 dbs]# cat initSTDRAC.ora
STDRAC.__data_transfer_cache_size=0
STDRAC.__db_cache_size=260046848
STDRAC.__java_pool_size=4194304
STDRAC.__large_pool_size=8388608
STDRAC.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment
STDRAC.__pga_aggregate_target=301989888
STDRAC.__sga_target=452984832
STDRAC.__shared_io_pool_size=12582912
STDRAC.__shared_pool_size=159383552
STDRAC.__streams_pool_size=0
*.audit_file_dest='/u01/app/oracle/admin/STDRAC/adump'
*.audit_trail='db'
*.compatible='12.1.0.2.0'
*.control_files='/u01/app/oracle/oradata/STDRAC/control01.ctl','/u01/app/oracle/fast_recovery_area/STDRAC/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='RAC'
*.db_unique_name='STDRAC'
*.LOG_ARCHIVE_DEST_2='SERVICE=RAC LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=RAC'
*.fal_server=rac
*.fal_client=stdrac
*.standby_file_management=auto
*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(stdrac,rac)'
*.log_file_name_convert='+DATA/RAC/ONLINELOG/,'/u01/app/oracle/fast_recovery_area/RAC/onlinelog/'
*.db_file_name_convert='+DATA/RAC/DATAFILE/','/u01/app/oracle/oradata/RAC/'
*.db_recovery_file_dest='/u01/app/oracle/fast_recovery_area'
*.db_recovery_file_dest_size=4560m
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=STDRACXDB)'
*.log_archive_format='%t_%s_%r.dbf'
*.memory_target=720m
*.open_cursors=300
*.processes=300
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'
*.LOG_ARCHIVE_DEST_STATE_2='ENABLE'
[root@srv3 dbs]#

  • Login standby database and start db using pfile in no mount state 
[oracle@srv3 dbs]$ . oraenv
ORACLE_SID = [STDRAC] ?
The Oracle base remains unchanged with value /u01/app/oracle
[oracle@srv3 dbs]$[oracle@srv3 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Fri Dec 6 19:12:03 2019

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup nomount pfile='/u01/app/oracle/product/12.1.0/dbhome_1/dbs/initSTDRAC.ora';
ORACLE instance started.

Total System Global Area  754974720 bytes
Fixed Size                  2928968 bytes
Variable Size             566234808 bytes
Database Buffers          180355072 bytes
Redo Buffers                5455872 bytes
SQL> exit
Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

  • login primary db with auxiliary instance 

[oracle@srv3 dbs]$  rman target sys/system123@pretaf auxiliary /

Recovery Manager: Release 12.1.0.2.0 - Production on Fri Dec 6 19:12:32 2019

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

connected to target database: RAC (DBID=2608333762)
connected to auxiliary database: RAC (not mounted)


  • Run duplicate command for creating standby database 

RMAN> duplicate target database for standby nofilenamecheck;

Starting Duplicate Db at 06-DEC-2019 19:12:55
using target database control file instead of recovery catalog
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=22 device type=DISK

contents of Memory Script:
{
   restore clone standby controlfile;
}
executing Memory Script

Starting restore at 06-DEC-2019 19:12:56
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: reading from backup piece /u01/rmanbkp/44uimg4j_1_1
channel ORA_AUX_DISK_1: piece handle=/u01/rmanbkp/44uimg4j_1_1 tag=TAG20191205T195915
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/oradata/STDRAC/control01.ctl
output file name=/u01/app/oracle/fast_recovery_area/STDRAC/control02.ctl
Finished restore at 06-DEC-2019 19:12:58

contents of Memory Script:
{
   sql clone 'alter database mount standby database';
}
executing Memory Script

sql statement: alter database mount standby database
RMAN-05529: WARNING: DB_FILE_NAME_CONVERT resulted in invalid ASM names; names changed to disk group only.

contents of Memory Script:
{
   set newname for tempfile  1 to
 "+DATA";
   switch clone tempfile all;
   set newname for datafile  1 to
 "/u01/app/oracle/oradata/RAC/system.279.1020351597";
   set newname for datafile  2 to
 "/u01/app/oracle/oradata/RAC/idata.284.1020709157";
   set newname for datafile  3 to
 "/u01/app/oracle/oradata/RAC/sysaux.271.1020351511";
   set newname for datafile  4 to
 "/u01/app/oracle/oradata/RAC/undotbs1.270.1020351693";
   set newname for datafile  5 to
 "/u01/app/oracle/oradata/RAC/undotbs2.278.1020352203";
   set newname for datafile  6 to
 "/u01/app/oracle/oradata/RAC/users.272.1020351691";
   set newname for datafile  7 to
 "/u01/app/oracle/oradata/RAC/ilog.285.1020709245";
   set newname for datafile  8 to
 "/u01/app/oracle/oradata/RAC/indx.286.1020709561";
   restore
   clone database
   ;
}
executing Memory Script

executing command: SET NEWNAME

renamed tempfile 1 to +DATA in control file

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 06-DEC-2019 19:13:03
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/RAC/system.279.1020351597
channel ORA_AUX_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/RAC/idata.284.1020709157
channel ORA_AUX_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/RAC/sysaux.271.1020351511
channel ORA_AUX_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/RAC/undotbs1.270.1020351693
channel ORA_AUX_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/RAC/undotbs2.278.1020352203
channel ORA_AUX_DISK_1: restoring datafile 00006 to /u01/app/oracle/oradata/RAC/users.272.1020351691
channel ORA_AUX_DISK_1: restoring datafile 00007 to /u01/app/oracle/oradata/RAC/ilog.285.1020709245
channel ORA_AUX_DISK_1: restoring datafile 00008 to /u01/app/oracle/oradata/RAC/indx.286.1020709561
channel ORA_AUX_DISK_1: reading from backup piece /u01/rmanbkp/ RAC_41uimfth_1_1.bckp
channel ORA_AUX_DISK_1: piece handle=/u01/rmanbkp/ RAC_41uimfth_1_1.bckp tag=TAG20191205T195528
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:03:05
Finished restore at 06-DEC-2019 19:16:09

contents of Memory Script:
{
   switch clone datafile all;
}
executing Memory Script

datafile 1 switched to datafile copy
input datafile copy RECID=5 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/system.279.1020351597
datafile 2 switched to datafile copy
input datafile copy RECID=6 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/idata.284.1020709157
datafile 3 switched to datafile copy
input datafile copy RECID=7 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/sysaux.271.1020351511
datafile 4 switched to datafile copy
input datafile copy RECID=8 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/undotbs1.270.1020351693
datafile 5 switched to datafile copy
input datafile copy RECID=9 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/undotbs2.278.1020352203
datafile 6 switched to datafile copy
input datafile copy RECID=10 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/users.272.1020351691
datafile 7 switched to datafile copy
input datafile copy RECID=11 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/ilog.285.1020709245
datafile 8 switched to datafile copy
input datafile copy RECID=12 STAMP=1026328569 file name=/u01/app/oracle/oradata/RAC/indx.286.1020709561

Finished Duplicate Db at 06-DEC-2019 19:18:32

RMAN>
RMAN>


###############################################################################

  • Login standby database and perform mrp process and check the same

[oracle@srv3 ~]$ . oraenv
ORACLE_SID = [stdrac] ?
The Oracle base remains unchanged with value /u01/app/oracle
[oracle@srv3 ~]$ sqlplus / as sysdba


SQL*Plus: Release 12.1.0.2.0 Production on Wed Dec 11 12:31:54 2019

Copyright (c) 1982, 2014, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> set lines 200
select name, instance_name,db_unique_name, open_mode, database_role, flashback_on  current_scn,to_char(standby_became_primary_scn) failover_scn from v$database,v$instance;
select PROCESS,STATUS, SEQUENCE#,THREAD# from v$managed_standby;SQL>
NAME      INSTANCE_NAME    DB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE    CURRENT_SCN        FAILOVER_SCN
--------- ---------------- ------------------------------ -------------------- ---------------- ------------------ ----------------------------------------
RAC       stdrac           STDRAC                         MOUNTED              PHYSICAL STANDBY NO                 0

SQL> alter database recover managed standby database disconnect from session;

SQL> select PROCESS,STATUS,THREAD#,SEQUENCE# from v$managed_standby;

PROCESS   STATUS          THREAD#  SEQUENCE#
--------- ------------ ---------- ----------
ARCH      CONNECTED             0          0
ARCH      CONNECTED             0          0
ARCH      CONNECTED             0          0
ARCH      CONNECTED             0          0
MRP0      WAIT_FOR_LOG          2        610
RFS       IDLE                  0          0
RFS       IDLE                  1        583
RFS       IDLE                  0          0
RFS       IDLE                  0          0
RFS       IDLE                  2        610
RFS       IDLE                  0          0

PROCESS   STATUS          THREAD#  SEQUENCE#
--------- ------------ ---------- ----------
RFS       IDLE                  0          0

12 rows selected.

SQL>



12c RAC 2 node RMAN Backup Restoration to standalone database archivelog log recovery

12c RAC RMAN Backup Restoration to standalone database archivelog log recovery
  • RAC full rman backup 
  •  Restore controlfile from rman backup
  • Database mount
  • Catalog start with
  • Set new name fro datafile
  • Restore and revover database
  • Change redo logfile location
  • recover database 
  • Copy archivelog from RAC db to standalone database.
  • recover database.
------------------------------------------------------------------


  • open database in reset logs


  • Check the status and group# of  redolog thread #2


  • Disable Thread#2


  • Clear un archived log of thread#2


  • Check and drop undo tablespace of thread#2


  • Create new tempfile and drop old tempfile, Mark new tempfile as default.


##########################################################################


SQL*Plus: Release 12.1.0.2.0 Production on Wed Jan 29 14:21:16 2020

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup nomount;
ORACLE instance started.

Total System Global Area 3942645760 bytes
Fixed Size                  2931616 bytes
Variable Size             939525216 bytes
Database Buffers         2986344448 bytes
Redo Buffers               13844480 bytes
SQL> exit
Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
oracle@sgdcpl08:~> rman target /

Recovery Manager: Release 12.1.0.2.0 - Production on Wed Jan 29 14:23:35 2020

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

connected to target database: SMRRAC (not mounted)

RMAN> restore controlfile from '/u02/rman_smrrac/control_SMRRAC_20200129.bak';

Starting restore at 29-JAN-2020 14:23:50
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=527 device type=DISK

channel ORA_DISK_1: copied control file copy
output file name=/u01/app/oracle/oradata/smrrac/control01.ctl
output file name=/u01/app/oracle/fast_recovery_area/smrrac/control02.ctl
Finished restore at 29-JAN-2020 14:23:52

RMAN> alter database mount;

Statement processed
released channel: ORA_DISK_1

RMAN> catalog start with '/u02/rman_smrrac/';

Starting implicit crosscheck backup at 29-JAN-2020 14:24:45
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=357 device type=DISK
Crosschecked 255 objects
Finished implicit crosscheck backup at 29-JAN-2020 14:24:47

Starting implicit crosscheck copy at 29-JAN-2020 14:24:47
using channel ORA_DISK_1
Crosschecked 32 objects
Finished implicit crosscheck copy at 29-JAN-2020 14:24:47

searching for all files in the recovery area
cataloging files...
cataloging done

List of Cataloged Files
=======================
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_27/o1_mf_1_15_h2x2qfh7_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_27/o1_mf_1_16_h2x34psh_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_27/o1_mf_1_17_h2xv84yz_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_27/o1_mf_1_18_h2ymtxvt_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_27/o1_mf_1_19_h2ymvdw9_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_27/o1_mf_1_20_h2ymw7wl_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_28/o1_mf_1_21_h2zctr18_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_28/o1_mf_1_22_h30m5d1k_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_28/o1_mf_1_23_h3186wg5_.arc
File Name: /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/o1_mf_1_24_h32cdtx0_.arc

searching for all files that match the pattern /u02/rman_smrrac/

List of Files Unknown to the Database
=====================================
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lkun6eo2_1716_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_llun6esu_1717_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lhun6eo1_1713_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_ljun6eo2_1715_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_liun6eo1_1714_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_loun6etd_1720_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lqun6etg_1722_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lrun6eti_1723_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lnun6etd_1719_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lpun6etd_1721_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lmun6etd_1718_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lsun6f1a_1724_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_ltun6f1a_1725_1_20200129
File Name: /u02/rman_smrrac/control_SMRRAC_20200129.bak
File Name: /u02/rman_smrrac/standbycontrol_SMRRAC_lvun6f1d_1_1.ctl

Do you really want to catalog the above files (enter YES or NO)? yes
cataloging files...
cataloging done

List of Cataloged Files
=======================
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lkun6eo2_1716_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_llun6esu_1717_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lhun6eo1_1713_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_ljun6eo2_1715_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_liun6eo1_1714_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_loun6etd_1720_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lqun6etg_1722_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lrun6eti_1723_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lnun6etd_1719_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lpun6etd_1721_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lmun6etd_1718_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_lsun6f1a_1724_1_20200129
File Name: /u02/rman_smrrac/Backup_SMRRAC_DB_ltun6f1a_1725_1_20200129
File Name: /u02/rman_smrrac/control_SMRRAC_20200129.bak
File Name: /u02/rman_smrrac/standbycontrol_SMRRAC_lvun6f1d_1_1.ctl

RMAN> run
{
set newname for datafile 1 to "/u01/app/oracle/oradata/smrrac/system01.dbf";
set newname for datafile 2 to "/u02/oradata/smrrac/idata01.dbf";
set newname for datafile 3 to "/u01/app/oracle/oradata/smrrac/sysaux01.dbf";
set newname for datafile 4 to "/u01/app/oracle/oradata/smrrac/undotbs01.dbf";
set newname for datafile 5 to "/u01/app/oracle/oradata/smrrac/undotbs02.dbf";
set newname for datafile 6 to "/u02/oradata/smrrac/users01.dbf";
set newname for datafile 7 to "/u02/oradata/smrrac/ilog01.dbf";
2> 3> 4> set newname for datafile 8 to "/u02/oradata/smrrac/indx01.dbf";
5> 6> 7> 8> 9> 10> 11> set newname for tempfile 1 to "/u01/app/oracle/oradata/smrrac/temp01.dbf";
RESTORE DATABASE;
SWITCH DATAFILE ALL;
SWITCH TEMPFILE ALL;12> 13> 14>
15> }

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 29-JAN-2020 14:25:28
using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/smrrac/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/smrrac/undotbs02.dbf
channel ORA_DISK_1: reading from backup piece /u02/rman_smrrac/Backup_SMRRAC_DB_loun6etd_1720_1_20200129
channel ORA_DISK_1: piece handle=/u02/rman_smrrac/Backup_SMRRAC_DB_loun6etd_1720_1_20200129 tag=TAG20200129T102133
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/smrrac/system01.dbf
channel ORA_DISK_1: restoring datafile 00008 to /u02/oradata/smrrac/indx01.dbf
channel ORA_DISK_1: reading from backup piece /u02/rman_smrrac/Backup_SMRRAC_DB_lnun6etd_1719_1_20200129
channel ORA_DISK_1: piece handle=/u02/rman_smrrac/Backup_SMRRAC_DB_lnun6etd_1719_1_20200129 tag=TAG20200129T102133
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:35
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/smrrac/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00007 to /u02/oradata/smrrac/ilog01.dbf
channel ORA_DISK_1: reading from backup piece /u02/rman_smrrac/Backup_SMRRAC_DB_lpun6etd_1721_1_20200129
channel ORA_DISK_1: piece handle=/u02/rman_smrrac/Backup_SMRRAC_DB_lpun6etd_1721_1_20200129 tag=TAG20200129T102133
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:55
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00002 to /u02/oradata/smrrac/idata01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /u02/oradata/smrrac/users01.dbf
channel ORA_DISK_1: reading from backup piece /u02/rman_smrrac/Backup_SMRRAC_DB_lmun6etd_1718_1_20200129
channel ORA_DISK_1: piece handle=/u02/rman_smrrac/Backup_SMRRAC_DB_lmun6etd_1718_1_20200129 tag=TAG20200129T102133
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:02:45
Finished restore at 29-JAN-2020 14:29:58

datafile 1 switched to datafile copy
input datafile copy RECID=122 STAMP=1030976998 file name=/u01/app/oracle/oradata/smrrac/system01.dbf
datafile 2 switched to datafile copy
input datafile copy RECID=123 STAMP=1030976998 file name=/u02/oradata/smrrac/idata01.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=124 STAMP=1030976998 file name=/u01/app/oracle/oradata/smrrac/sysaux01.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=125 STAMP=1030976998 file name=/u01/app/oracle/oradata/smrrac/undotbs01.dbf
datafile 5 switched to datafile copy
input datafile copy RECID=126 STAMP=1030976998 file name=/u01/app/oracle/oradata/smrrac/undotbs02.dbf
datafile 6 switched to datafile copy
input datafile copy RECID=127 STAMP=1030976998 file name=/u02/oradata/smrrac/users01.dbf
datafile 7 switched to datafile copy
input datafile copy RECID=128 STAMP=1030976998 file name=/u02/oradata/smrrac/ilog01.dbf
datafile 8 switched to datafile copy
input datafile copy RECID=129 STAMP=1030976998 file name=/u02/oradata/smrrac/indx01.dbf

renamed tempfile 1 to /u01/app/oracle/oradata/smrrac/temp01.dbf in control file

RMAN> exit


Recovery Manager complete.
oracle@sgdcpl08:~> sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Jan 29 14:48:34 2020

Copyright (c) 1982, 2014, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> @d

NAME      INSTANCE_NAME    DB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE    CURRENT_SCN        FAILOVER_SCN
--------- ---------------- ------------------------------ -------------------- ---------------- ------------------ ----------------------------------------
SMRRAC    smrrac           smrrac                         MOUNTED              PRIMARY          YES                0

SQL> recover database until cancel;
ORA-00283: recovery session canceled due to errors
ORA-01610: recovery using the BACKUP CONTROLFILE option must be done

################################################################################

Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
oracle@sgdcpl08:~> sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Jan 29 14:50:54 2020

Copyright (c) 1982, 2014, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> exit
Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
oracle@sgdcpl08:~> rman target /

Recovery Manager: Release 12.1.0.2.0 - Production on Wed Jan 29 14:50:58 2020

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

connected to target database: SMRRAC (DBID=4255065810, not open)

RMAN> SQL "ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_1.267.1020692667''  to  ''/u01/app/oracle/oradata/smrrac/redo01.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_1.260.1020692669''  to  ''/u01/app/oracle/oradata/smrrac/redo02.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_2.266.1020692669''  to  ''/u01/app/oracle/oradata/smrrac/redo03.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_2.259.1020692671''  to  ''/u01/app/oracle/oradata/smrrac/redo04.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_3.263.1020692675''  to  ''/u01/app/oracle/oradata/smrrac/redo05.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_3.258.1020692677''  to  ''/u01/app/oracle/oradata/smrrac/redo06.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_4.262.1020692677''  to  ''/u01/app/oracle/oradata/smrrac/redo07.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_4.257.1020692679''  to  ''/u01/app/oracle/oradata/smrrac/redo08.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_5.271.1030949473''  to  ''/u01/app/oracle/oradata/smrrac/redo09.log'' ";

using target database control file instead of recovery catalog
sql statement: ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_1.267.1020692667''  to  ''/u01/app/oracle/oradata/smrrac/redo01.log''
SQL "ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_5.284.1030949475''  to  ''/u01/app/oracle/oradata/smrrac/redo10.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_6.274.1030949487''  to  ''/u01/app/oracle/oradata/smrrac/redo11.log'' ";
SQL "ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_6.285.1030949487''  to  ''/u01/app/oracle/oradata/smrrac/redo12.log'' ";
RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_1.260.1020692669''  to  ''/u01/app/oracle/oradata/smrrac/redo02.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_2.266.1020692669''  to  ''/u01/app/oracle/oradata/smrrac/redo03.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_2.259.1020692671''  to  ''/u01/app/oracle/oradata/smrrac/redo04.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_3.263.1020692675''  to  ''/u01/app/oracle/oradata/smrrac/redo05.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_3.258.1020692677''  to  ''/u01/app/oracle/oradata/smrrac/redo06.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_4.262.1020692677''  to  ''/u01/app/oracle/oradata/smrrac/redo07.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_4.257.1020692679''  to  ''/u01/app/oracle/oradata/smrrac/redo08.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_5.271.1030949473''  to  ''/u01/app/oracle/oradata/smrrac/redo09.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_5.284.1030949475''  to  ''/u01/app/oracle/oradata/smrrac/redo10.log''

RMAN>
sql statement: ALTER DATABASE RENAME FILE ''+DATA/SMRRAC/ONLINELOG/group_6.274.1030949487''  to  ''/u01/app/oracle/oradata/smrrac/redo11.log''

RMAN>

sql statement: ALTER DATABASE RENAME FILE ''+FRA1/SMRRAC/ONLINELOG/group_6.285.1030949487''  to  ''/u01/app/oracle/oradata/smrrac/redo12.log''

RMAN>

RMAN> recover database until cancel;

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01009: syntax error: found "cancel": expecting one of: "scn, sequence, time"
RMAN-01007: at line 1 column 24 file: standard input

RMAN> recover database;

Starting recover at 29-JAN-2020 14:51:50
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=527 device type=DISK

starting media recovery

channel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=1 sequence=821
channel ORA_DISK_1: reading from backup piece /u02/rman_smrrac/Backup_SMRRAC_DB_lsun6f1a_1724_1_20200129
channel ORA_DISK_1: piece handle=/u02/rman_smrrac/Backup_SMRRAC_DB_lsun6f1a_1724_1_20200129 tag=TAG20200129T102338
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/o1_mf_1_821_h333hq6p_.arc thread=1 sequence=821
channel ORA_DISK_1: starting archived log restore to default destination
channel ORA_DISK_1: restoring archived log
archived log thread=2 sequence=593
channel ORA_DISK_1: reading from backup piece /u02/rman_smrrac/Backup_SMRRAC_DB_ltun6f1a_1725_1_20200129
channel ORA_DISK_1: piece handle=/u02/rman_smrrac/Backup_SMRRAC_DB_ltun6f1a_1725_1_20200129 tag=TAG20200129T102338
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/o1_mf_2_593_h333hrcb_.arc thread=2 sequence=593
channel default: deleting archived log(s)
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/o1_mf_1_821_h333hq6p_.arc RECID=1367 STAMP=1030978311
unable to find archived log
archived log thread=1 sequence=822
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/29/2020 14:51:54
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 822 and starting SCN of 64756182

RMAN>
login as: oracle
Keyboard-interactive authentication prompts from server:
| Password:
End of keyboard-interactive prompts from server
Last login: Thu Jan 30 07:46:09 2020 from 172.29.42.175
oracle@sgdcpl08:~> pwd
/home/oracle
oracle@sgdcpl08:~> . oraenv
ORACLE_SID = [SMRPATCH7] ? smrrac
The Oracle base remains unchanged with value /u01/app/oracle
oracle@sgdcpl08:~> rman target /

Recovery Manager: Release 12.1.0.2.0 - Production on Thu Jan 30 07:47:40 2020

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

connected to target database: SMRRAC (DBID=4255065810, not open)

RMAN> recover database;

Starting recover at 30-JAN-2020 07:52:00
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=176 device type=DISK

starting media recovery

archived log for thread 1 with sequence 822 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_822_1020157972.arc
archived log for thread 1 with sequence 823 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_823_1020157972.arc
archived log for thread 1 with sequence 824 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_824_1020157972.arc
archived log for thread 1 with sequence 825 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_825_1020157972.arc
archived log for thread 2 with sequence 593 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/o1_mf_2_593_h333hrcb_.arc
archived log for thread 2 with sequence 594 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_594_1020157972.arc
archived log for thread 2 with sequence 595 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_595_1020157972.arc
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_822_1020157972.arc thread=1 sequence=822
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/o1_mf_2_593_h333hrcb_.arc thread=2 sequence=593
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_594_1020157972.arc thread=2 sequence=594
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_595_1020157972.arc thread=2 sequence=595
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_823_1020157972.arc thread=1 sequence=823

archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_824_1020157972.arc thread=1 sequence=824

archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_825_1020157972.arc thread=1 sequence=825
unable to find archived log
archived log thread=2 sequence=596
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/30/2020 07:52:59
RMAN-06054: media recovery requesting unknown archived log for thread 2 with sequence 596 and starting SCN of 65089014

RMAN> recover database;

Starting recover at 30-JAN-2020 08:30:07
using channel ORA_DISK_1

starting media recovery

archived log for thread 1 with sequence 825 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_825_1020157972.arc
unable to find archived log
archived log thread=2 sequence=596
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/30/2020 08:30:07
RMAN-06054: media recovery requesting unknown archived log for thread 2 with sequence 596 and starting SCN of 65089014

RMAN> recover database;

Starting recover at 30-JAN-2020 08:30:28
using channel ORA_DISK_1

starting media recovery

archived log for thread 1 with sequence 825 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_825_1020157972.arc
unable to find archived log
archived log thread=2 sequence=596
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/30/2020 08:30:28
RMAN-06054: media recovery requesting unknown archived log for thread 2 with sequence 596 and starting SCN of 65089014

RMAN>  recover database;

Starting recover at 30-JAN-2020 08:30:47
using channel ORA_DISK_1

starting media recovery

archived log for thread 1 with sequence 825 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_825_1020157972.arc
unable to find archived log
archived log thread=2 sequence=596
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/30/2020 08:30:48
RMAN-06054: media recovery requesting unknown archived log for thread 2 with sequence 596 and starting SCN of 65089014

RMAN> exit


Recovery Manager complete.
oracle@sgdcpl08:~> rman target /

Recovery Manager: Release 12.1.0.2.0 - Production on Thu Jan 30 08:31:21 2020

Copyright (c) 1982, 2014, Oracle and/or its affiliates.  All rights reserved.

connected to target database: SMRRAC (DBID=4255065810, not open)

RMAN> recover database;

Starting recover at 30-JAN-2020 08:31:28
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=176 device type=DISK

starting media recovery

archived log for thread 1 with sequence 825 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_825_1020157972.arc
archived log for thread 1 with sequence 826 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_826_1020157972.arc
archived log for thread 1 with sequence 827 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_827_1020157972.arc
archived log for thread 1 with sequence 828 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_828_1020157972.arc
archived log for thread 1 with sequence 829 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_829_1020157972.arc
archived log for thread 1 with sequence 830 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_830_1020157972.arc
archived log for thread 1 with sequence 831 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_831_1020157972.arc
archived log for thread 2 with sequence 596 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_596_1020157972.arc
archived log for thread 2 with sequence 597 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_597_1020157972.arc
archived log for thread 2 with sequence 598 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_598_1020157972.arc
archived log for thread 2 with sequence 599 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_599_1020157972.arc
archived log for thread 2 with sequence 600 is already on disk as file /u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_600_1020157972.arc
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_596_1020157972.arc thread=2 sequence=596
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_825_1020157972.arc thread=1 sequence=825
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_826_1020157972.arc thread=1 sequence=826
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_827_1020157972.arc thread=1 sequence=827
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_828_1020157972.arc thread=1 sequence=828
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_597_1020157972.arc thread=2 sequence=597
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_598_1020157972.arc thread=2 sequence=598
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_829_1020157972.arc thread=1 sequence=829
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_830_1020157972.arc thread=1 sequence=830
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_599_1020157972.arc thread=2 sequence=599
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_2_600_1020157972.arc thread=2 sequence=600
archived log file name=/u01/app/oracle/fast_recovery_area/SMRRAC/archivelog/2020_01_29/arch_1_831_1020157972.arc thread=1 sequence=831
unable to find archived log
archived log thread=1 sequence=832
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 01/30/2020 08:32:30
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 832 and starting SCN of 65557026

RMAN>


SQL> /

    GROUP# STATUS  TYPE    MEMBER                                             IS_     CON_ID
---------- ------- ------- -------------------------------------------------- --- ----------
         1         ONLINE  /u01/app/oracle/oradata/smrrac/redo01.log          NO           0
         1         ONLINE  /u01/app/oracle/oradata/smrrac/redo02.log          NO           0
         2         ONLINE  /u01/app/oracle/oradata/smrrac/redo03.log          NO           0
         2         ONLINE  /u01/app/oracle/oradata/smrrac/redo04.log          NO           0
         3         ONLINE  /u01/app/oracle/oradata/smrrac/redo05.log          NO           0
         3         ONLINE  /u01/app/oracle/oradata/smrrac/redo06.log          NO           0
         4         ONLINE  /u01/app/oracle/oradata/smrrac/redo07.log          NO           0
         4         ONLINE  /u01/app/oracle/oradata/smrrac/redo08.log          NO           0
         5         ONLINE  /u01/app/oracle/oradata/smrrac/redo09.log          NO           0
         5         ONLINE  /u01/app/oracle/oradata/smrrac/redo10.log          NO           0
         6         ONLINE  /u01/app/oracle/oradata/smrrac/redo11.log          NO           0

    GROUP# STATUS  TYPE    MEMBER                                             IS_     CON_ID
---------- ------- ------- -------------------------------------------------- --- ----------
         6         ONLINE  /u01/app/oracle/oradata/smrrac/redo12.log          NO           0

12 rows selected.

SQL> select name from v$controlfile;

NAME
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/u01/app/oracle/oradata/smrrac/control01.ctl
/u01/app/oracle/fast_recovery_area/smrrac/control02.ctl

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/u01/app/oracle/oradata/smrrac/system01.dbf
/u02/oradata/smrrac/idata01.dbf
/u01/app/oracle/oradata/smrrac/sysaux01.dbf
/u01/app/oracle/oradata/smrrac/undotbs01.dbf
/u01/app/oracle/oradata/smrrac/undotbs02.dbf
/u02/oradata/smrrac/users01.dbf
/u02/oradata/smrrac/ilog01.dbf
/u02/oradata/smrrac/indx01.dbf

8 rows selected.

SQL> @d
SP2-0310: unable to open file "d.sql"
SQL> @/home/oracle/d

NAME      INSTANCE_NAME    DB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE    CURRENT_SCN        FAILOVER_SCN
--------- ---------------- ------------------------------ -------------------- ---------------- ------------------ ----------------------------------------
SMRRAC    smrrac           smrrac                         MOUNTED              PRIMARY          YES                0

SQL> alter database open resetlogs;

Database altered.

SQL> select total_size,awr_flush_emergency_count from v$ash_info;

TOTAL_SIZE AWR_FLUSH_EMERGENCY_COUNT
---------- -------------------------
   8388608                         1

SQL>  @/home/oracle/d

NAME      INSTANCE_NAME    DB_UNIQUE_NAME                 OPEN_MODE            DATABASE_ROLE    CURRENT_SCN        FAILOVER_SCN
--------- ---------------- ------------------------------ -------------------- ---------------- ------------------ ----------------------------------------
SMRRAC    smrrac           smrrac                         READ WRITE           PRIMARY          YES                0

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------
/u01/app/oracle/oradata/smrrac/redo01.log
/u01/app/oracle/oradata/smrrac/redo02.log
/u01/app/oracle/oradata/smrrac/redo03.log
/u01/app/oracle/oradata/smrrac/redo04.log
/u01/app/oracle/oradata/smrrac/redo05.log
/u01/app/oracle/oradata/smrrac/redo06.log
/u01/app/oracle/oradata/smrrac/redo07.log
/u01/app/oracle/oradata/smrrac/redo08.log
/u01/app/oracle/oradata/smrrac/redo09.log
/u01/app/oracle/oradata/smrrac/redo10.log
/u01/app/oracle/oradata/smrrac/redo11.log

MEMBER
--------------------------------------------------
/u01/app/oracle/oradata/smrrac/redo12.log

12 rows selected.

SQL> select THREAD#, STATUS, ENABLED from v$thread;

   THREAD# STATUS ENABLED
---------- ------ --------
         1 OPEN   PUBLIC
         2 CLOSED PUBLIC

SQL> select group# from v$log where THREAD#=2;

    GROUP#
----------
         3
         4
         6

SQL> alter database disable thread 2;

Database altered.

SQL> alter database clear unarchived logfile group 3
  2  ;

Database altered.

SQL> alter database clear unarchived logfile group 4;

Database altered.

SQL> alter database clear unarchived logfile group 6;

Database altered.

SQL> select THREAD#, STATUS, ENABLED from v$thread;

   THREAD# STATUS ENABLED
---------- ------ --------
         1 OPEN   PUBLIC
         2 CLOSED DISABLED

SQL> sho parameter undo;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
temp_undo_enabled                    boolean     FALSE
undo_management                      string      AUTO
undo_retention                       integer     900
undo_tablespace                      string      UNDOTBS1
SQL> select tablespace_name from dba_tablespaces where contents='UNDO';

TABLESPACE_NAME
------------------------------
UNDOTBS1
UNDOTBS2

SQL> drop tablespace UNDOTBS2 including contents and datafiles;

Tablespace dropped.

SQL> select name from v$tempfile;

NAME
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/u01/app/oracle/oradata/smrrac/temp01.dbf

SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY';

TABLESPACE_NAME
------------------------------
TEMP

SQL> create temporary tablespace TEMP1 tempfile '/u01/app/oracle/oradata/smrrac/temp001.dbf' size 50m;

Tablespace created.

SQL> alter database default temporary tablespace TEMP1;

Database altered.

SQL> drop tablespace TEMP including contents and datafiles;

Tablespace dropped.

SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY';

TABLESPACE_NAME
------------------------------
TEMP1

SQL> @/home/oracle/d


$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\

NOTE : --- increase pga_target , sga , temp file , undo file if required, match with production requirement.