ORACLE11G DG打補丁

OGG-01161發表於2016-04-21

一套ORACLE11G DG環境打補丁
############## apply patch前備份工作 ###############
lsnrctl stop
sqlplus / as sysdba;
shutdown immediate;
startup;
run{                                                                                                                                                       
allocate channel c1 device type disk;                                                            
allocate channel c2 device type disk;                                                       
backup  AS COMPRESSED BACKUPSET format   'E:\rmanback\gzxnh_full_%T_%d_%s_%p_%u.dbf' database plus archivelog;                
sql "ALTER SYSTEM switch logfile";                                                               
sql "ALTER SYSTEM switch logfile";    
sql "ALTER SYSTEM switch logfile";                                                             
backup current controlfile format  'E:\rmanback\controlfile_%T_%U_%t.crl';                                              
release channel c1;                                                                              
release channel c2;                                                                                
}
############### apply patth前備庫複製工作檢查 ############
主庫:
lsnrctl stop
sqlplus / as sysdba;
shutdown immediate;
startup;
create table test0407(id number(4));
備庫:
檢視備庫是否有資料應用,到沒有變化再關閉資料庫
sqlplus / as sysdba;
desc test0407;
select process,status,thread#,sequence#,block#,blocks from v$managed_standby;
lsnrctl stop
sqlplus / as sysdba;
alter database recover managed standby database cancel;
shutdown immediate;
   
###############主庫apply patch  ####################
1、資料庫補丁檢查
%ORACLE_HOME%/OPatch/opatch lsinventory
2、關閉資料庫和監聽
lsnrctl stop
sqlplus / as sysdba;
shutdown immediate;
3、apply patch
set ORACLE_HOME= 
cd 13423278 
opatch apply 
4、驗證patch
%ORACLE_HOME%/OPatch/opatch lsinventory
5、啟動資料庫和監聽
lsnrctl start
sqlplus / as sysdba;
startup;
6、Loading Modified .sql Files into the Database
> cd %ORACLE_HOME%\Bundle\Patch16
> sqlplus /nolog 
SQL> CONNECT / AS SYSDBA 
SQL> spool catcpu0407.log
SQL> @catcpu.sql
SQL> QUIT 
7、檢查日誌
$ORACLE_HOME/cfgtoollogs/catbundle 
catbundle_WINBUNDLE__APPLY_.log
catbundle_WINBUNDLE__GENERATE_.log
8、編譯無效物件
> cd %ORACLE_HOME%\rdbms\admin 
> sqlplus /nolog 
SQL> CONNECT / AS SYSDBA
SQL> @utlrp.sql
To check for invalid objects, execute the following statement:
SQL> SELECT OBJECT_NAME FROM DBA_OBJECTS WHERE STATUS = 'INVALID'; 


###############備庫apply patch  ####################
1、資料庫補丁檢查
%ORACLE_HOME%/OPatch/opatch lsinventory
2、關閉資料庫和監聽
lsnrctl stop
sqlplus / as sysdba;
shutdown immediate;
3、apply patch
set ORACLE_HOME= 
cd 13423278 
opatch apply 
4、檢查patch
%ORACLE_HOME%/OPatch/opatch lsinventory
############啟動備庫,觀察DG是否正常############
lsnrctl start
startup nomount;
alter database mount standby database;
alter database open read only;
alter database recover managed standby database using current logfile disconnect from session;
select process,status,thread#,sequence#,block#,blocks from v$managed_standby;

##########測試DG複製是否正常#######
主庫
sqlplus / as sysdba;
insert into test0407 values(2222)
commit;
備庫
sqlplus / as sysdba;
select * from test0407;

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27571661/viewspace-2085212/,如需轉載,請註明出處,否則將追究法律責任。

相關文章