Backup / Restore Scripts


#!/bin/ksh
############################################################################
# Script Name..: 01 backup_copy_lvl0.ksh
# Description..:
# Author.......: M. Culp
# Date.........: 07/09/2013
# Version......:
# Modified By..:
# Date Modified:
# Comments.....:
# Schema owner.:
#    alter session set current
# Login User...:
# Run Order....:
# Dependent on.:
# Script type..:
#############################################################################

rman  << EOF 
connect target / connect catalog <username>/<password>@<connect string> 
spool log to logs/11backup_copy_lvl0.log 
run { ALLOCATE CHANNEL dev1 DEVICE TYPE DISK; 
      ALLOCATE CHANNEL dev2 DEVICE TYPE DISK; 
      BACKUP AS COPY INCREMENTAL LEVEL 0 DATAFILE "+SHARED_DATA_DG01/cdahxf02/datafile/cdahx_data.848.806779823"  FORMAT "+TEMP_TEST_DG" TAG 'ORA_ASM_MIGRATE'; 
    } 
list copy of datafile 7; 
spool log off 
EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 02 backup_copy_lvl1.ksh 
# Description..: Create level 1 incremental copy 
# Author.......: Culp 
# Date.........: 07/09/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#    alter session set current 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# ##########################################################################

rman  <<EOF 
connect target / connect catalog <a href="mailto:rcvcat109/RMANDBA@ddsrmand">rcvcat109/RMANDBA@ddsrmand</a> 
spool log to logs/2backup_copy_lvl1.log 
run { ALLOCATE CHANNEL dev1 DEVICE TYPE DISK; 
      ALLOCATE CHANNEL dev2 DEVICE TYPE DISK; 
      BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'ORA_ASM_MIGRATE' DATAFILECOPY  FORMAT '+TEMP_TEST_DG' datafile 7; } 
list copy of datafile 7; 
spool log off 
EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 3 recover_copy.ksh 
# Description..: Apply incremental backup to the level 0 data file copy 
# Author.......: Dugan 
# Date.........: 07/09/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#    alter session set current 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# #############################################################################

rman  << EOF 
connect target / connect catalog <a href="mailto:rcvcat109/RMANDBA@ddsrmand">rcvcat109/RMANDBA@ddsrmand</a> 
spool log to logs/3recover_copy.log 
run { ALLOCATE CHANNEL dev1 DEVICE TYPE DISK; 
      ALLOCATE CHANNEL dev2 DEVICE TYPE DISK; 
      RECOVER COPY OF DATAFILE 7 WITH TAG 'ORA_ASM_MIGRATE'; 
    } 
list copy of datafile 7; 
spool log off 
EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 4restricted_sessions.ksh 
# Description..: Enable Restricted Sessions 
# Author.......: Culp 
# Date.........: 06/20/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: This script must be run on each instance 
# Schema owner.: 
#    alter session set current 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# ############################################################################

sqlplus -s "/ as sysdba" <<EOF

spool logs/4restricted_sessions.log
set lines 120 
set pages 999

col name for a55 col value for a15

SELECT instance_name 
      ,(SELECT to_char(sysdate , 'HH24:MI:SS') "Date" 
          FROM dual) "Date" 
  FROM v\$instance;

SELECT username
     , status
     , count(*) 
  FROM gv\$session 
 GROUP BY username, status;

-- you may need to terminate sessions ALTER SYSTEM ENABLE RESTRICTED SESSION;

SELECT username, status, count(*) FROM gv\$session GROUP BY username, status;

alter system set job_queue_processes=0 scope=both sid='*'; 
alter system set aq_tm_processes=0 scope=both sid='*';

spool off

EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 5datafile_offline.ksh 
# Description..: Takes specified datafile offline 
# Author.......: Culp
# Date.........: 07/10/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#    alter session set current 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# ############################################################################

sqlplus -s "/ as sysdba" <<EOF

spool logs/5datafile_offline.log 
set lines 120 
set pages 999

col name for a65 col value for a15

SELECT instance_name 
      ,(SELECT to_char(sysdate , 'HH24:MI:SS') "Date" 
          FROM dual) "Date" 
 FROM v\$instance;

SELECT file#
      ,name
      ,status 
 FROM v\$datafile 
ORDER BY 1; 

prompt Altering datafile offline

ALTER database datafile 7 offline;

SELECT file#
     , name
     , status 
  FROM v\$datafile 
 ORDER BY 1;

spool off

EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 6switch_datafile_to_copy.ksh 
# Description..: Switch the datafile to the latest image copy and recover the datafile 
# Author.......: Culp
# Date.........: 07/09/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#    alter session set current # Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# #########################################################################

rman  <<EOF 
connect target / connect catalog <a href="mailto:rcvcat109/RMANDBA@ddsrmand">rcvcat109/RMANDBA@ddsrmand</a> 
spool log to logs/6switch_datafile_to_copy.log 
switch datafile 7 to copy; 
spool log off 
EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 7recover_datafile.ksh 
# Description..: Recover the datafile 
# Author.......: Dugan 
# Date.........: 07/09/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#    alter session set current 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# #############################################################################

rman  <<EOF connect target / connect catalog <a href="mailto:rcvcat109/RMANDBA@ddsrmand">rcvcat109/RMANDBA@ddsrmand</a> 
spool log to logs/7recover_datafile.log 
run { ALLOCATE CHANNEL dev1 DEVICE TYPE DISK; 
      ALLOCATE CHANNEL dev2 DEVICE TYPE DISK; 
      RECOVER DATAFILE 7 ;
    } 
list copy of datafile 7; 
spool log off 
EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 8datafile_online.ksh 
# Description..: Bring datafile online 
# Author.......: Sara Dugan 
# Date.........: 07/10/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#    alter session set current 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# ############################################################################

sqlplus -s "/ as sysdba" <<EOF

spool logs/8datafile_online.log 
set lines 120 
set pages 999

col name for a65 col value for a15

SELECT instance_name 
      ,(SELECT to_char(sysdate , 'HH24:MI:SS') "Date" 
          FROM dual) "Date" 
 FROM v\$instance;

SELECT file#
     , name
     , status 
  FROM v\$datafile 
 ORDER BY 1; 

prompt Altering datafile online

ALTER database datafile 7 online;

SELECT file#
     ,name
     ,status 
 FROM v\$datafile 
ORDER BY 1;

spool off

EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: 9restricted_sessions_off.ksh 
# Description..: Disable Restricted Sessions 
# Author.......: Culp
# Date.........: 06/20/2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: This script must be run on each instance 
# Schema owner.: 
#    alter session set current 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# ############################################################################

sqlplus -s "/ as sysdba" <<EOF

spool logs/9restricted_sessions_off.log 
set lines 120 
set pages 999

col name for a55 col value for a15

SELECT instance_name ,(SELECT to_char(sysdate , 'HH24:MI:SS') "Date" 
                         FROM dual) "Date" 
  FROM v\$instance;

ALTER SYSTEM DISABLE RESTRICTED SESSION;

alter system set job_queue_processes=1000 scope=both sid='*'; 
alter system set aq_tm_processes =1 scope=both sid='*'; 
spool off

EOF

############################################################################
#!/bin/ksh 
############################################################################ 
# Script Name..: xxx.ksh 
# Description..: 
# Author.......: Michael Culp 
# Date.........: 04/ /2013 
# Version......: # Modified By..: # Date Modified: # Comments.....: # Schema owner.: #              : alter session set current should be used to change schemas # Login User...: # Run Order....: # Dependent on.: # Script type..: # ############################################################################

sqlplus -s "/ as sysdba" <<EOF 
set lines 150 
set pages 150 -- 
spool <some file name>

set lines 122 pages 9999  col name for a63

select file#
,      name
,      status
,      checkpoint_change# chkpt#
,      to_char(checkpoint_time,'DD-MON-YYYY HH24:MI:SS') chkpt_date   
 from v\$datafile  
where lower(name) like '%cdahx_data%%';

-- spool off EOF

############################################################################
!/bin/ksh 
############################################################################ 
# Script Name..: yyy.ksh 
# Description..: 
# Author.......: Michael Culp 
# Date.........: 04/ /2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#              : alter session set current should be used to change schemas 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# ############################################################################

sqlplus -s "/ as sysdba" <<EOF 
set lines 150 
set pages 150 
-- spool <some file name>

SELECT SID
      , SERIAL#
      , CONTEXT
      , SOFAR
      , TOTALWORK
      ,ROUND(SOFAR/TOTALWORK*100,2) "%_COMPLETE"   
 FROM V\$SESSION_LONGOPS  
WHERE OPNAME LIKE 'RMAN%' 
  AND OPNAME NOT LIKE '%aggregate%' 
  AND TOTALWORK != 0 
  AND SOFAR  != TOTALWORK;

-- spool off EOF

############################################################################
!/bin/ksh 
############################################################################ 
# Script Name..: zzz.ksh 
# Description..: 
# Author.......: Michael Culp 
# Date.........: 04/ /2013 
# Version......: 
# Modified By..: 
# Date Modified: 
# Comments.....: 
# Schema owner.: 
#              : alter session set current should be used to change schemas 
# Login User...: 
# Run Order....: 
# Dependent on.: 
# Script type..: 
# ############################################################################

sqlplus -s "/ as sysdba" <<EOF 
set lines 150 
set pages 150 -- 
spool <some file name>

set lines 122 pages 9999 
col name for a63

select name
,      state
,      total_mb   
  from v\$asm_diskgroup  
 where lower(name) like '%shared_data_dg%' 
    or lower(name) like '%temp%' 
    or lower(name) like '%shared_data_hp%'  
 order by name;

--spool off EOF

Leave a Reply

Your email address will not be published. Required fields are marked *