Oracle 11.2.0.1.0升級到11.2.0.4.7案例一則
總體思路:
(1) 備份資料庫
(2) 備份oracle目錄
(3)
執行11.2.0.4.0
patchset,升級oracle 軟體
(4) 執行dbua 或者指令碼升級例項,從11.2.0.1.0升級到11.2.0.4.0
(5) 使用opatch打小補丁,從
11.2.0.4.0升級到11.2.0.4.7
(6) 檢查升級後的版本資訊和無效物件
一.備份資料庫
run {
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
allocate channel c4 type disk;
backup as compressed backupset full database format='/backup/rman/db%d_%s_%p';
sql 'alter system archive log current';
backup format='/backup/rman/ac%d_%s_%p' archivelog all delete all input;
backup current controlfile format='/backup/rman/con%d_%s_%p';
release channel c1;
release channel c2;
release channel c3;
release channel c4;
}
二. purge dba_recylebin;
三.shutdown immediate
lsnrctl stop LISTENER_FMS
四. 備份ORACLE_HOME
tar cvf product.zip /oracle/product/
tar cvf oraInventory.zip /oracle/oraInventory/
五.上傳安裝包並解壓安裝
1. 上傳11.2.0.4.0 patch set
2. export DISPLAY=192.168.12.12:0.0
3. ./runInstaller
4.忽略郵件
5.選擇第三個選項,skip software update,
6.選擇upgrade an existing database。
7.安裝位置
原安裝目錄是/oracle/product/11.2.0/dbhome_1 ,改成了/oracle/product/11.2.0.4/dbhome_1 即將oracle 安裝到其他位置,這樣可以減少當機時間,也是oracle 推薦的方法。
8.Inventory directory:如有,將安裝檔案存放到其他目錄:/oracle/oraInventory2。
9.執行指令碼:裡面的路徑可覆蓋,最好另起目錄 /oracle/product/11.2.0.4/dbhome_1/root.sh
10.配置監聽:
這裡會提示配置監聽,因為監聽之前已經存在,所以這裡取消監聽配置。選擇skip
11.跳過監聽配置之後,便是使用dbua工具升級,這個可預設按提示一路預設next,
或是,跳過dbua直接完成安裝,而後選擇指令碼升級。
六.使用圖形介面DBUA工具完成升級,僅需要環境變數和複製network目錄。
1. 修改Oracle的.profile 檔案
我們重新指定了ORACLE_HOME,需要更新到.profile 裡。
ORACLE_HOME=/oracle/product/11.2.0.4/dbhome_1
2.複製配置檔案
具體操作步驟: cp /oracle/product/11.2.0/dbhome_1/dbs/* /oracle/product/11.2.0.4/dbhome_1/dbs/ (使用dbua跳過此步)
cp -R /oracle/product/11.2.0/dbhome_1/network/admin/* /oracle/product/11.2.0.4/dbhome_1/network/admin/
3.必要時再執行升級檢查指令碼:
sqlplus / as sysdba
startup upgrade;
spool /home/oracle/utlu112i_check.txt
@?/rdbms/admin/utlu112i.sql --檢查
spool off;
注意此時oracle 例項是執行在新的ORACLE_HOME下.
七. 如選擇手工執行指令碼升級,在以上五後按以下步驟。
1. 修改Oracle的.profile 檔案
我們重新指定了ORACLE_HOME,需要更新到.profile 裡。
ORACLE_HOME=/oracle/product/11.2.0.4/dbhome_1
2. 修改/etc/oratab 中的 ORACLE_HOME路徑為新的路徑。
vi /etc/oratab
3.複製配置檔案
具體操作步驟: cp /oracle/product/11.2.0/dbhome_1/dbs/* /oracle/product/11.2.0.4/dbhome_1/dbs/
cp -R /oracle/product/11.2.0/dbhome_1/network/admin/* /oracle/product/11.2.0.4/dbhome_1/network/admin/
4.執行升級檢查指令碼:
sqlplus / as sysdba
startup upgrade;
spool /home/oracle/utlu112i_check.txt
@?/rdbms/admin/utlu112i.sql --檢查
spool off;
5.如有不滿足
則進行修改
alter system set xxx=xxx scope=spfile;
shutdown immeidate;
startup mount;
alter database flashback on;
select * from v$restore_point;
@?/rdbms/admin/utlu112i.sql
6.升級
shutdown immediate;
startup upgrade;
set echo on
spool /home/oracle/upgrade.log
set time on;
@?rdbms/admin/catupgrd.sql
spool off;
八.完成11.2.0.1.0升級11.2.0.4.0後便是進行PSU到11.2.0.4.7
1.備份原有OPatch: mv OPatch OPatch_bak
2.解壓新的OPatch,unzip 升級11.2.0.4.7要求至少是 11.2.0.3.6版本的opatch.
3.解壓opatch 補丁包。
4.cd 到補丁目錄下,執行以下命令,進行補丁檢測。
/oracle/product/11.2.0.4/dbhome_1/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
5. sqlplus / as sysdba
shutdown immediate
並退出所有sqlplus 視窗
6.打補丁:在補丁目錄下 /oracle/product/11.2.0.4/dbhome_1/OPatch/opatch apply
是否繼續? [y|n]
y
User Responded with: Y
All checks passed.
提供電子郵件地址以用於接收有關安全問題的通知, 安裝 Oracle Configuration Manager 並啟動它。如果您使用 My Oracle
Support 電子郵件地址/使用者名稱, 操作將更簡單。
有關詳細資訊, 請訪問 。
電子郵件地址/使用者名稱:
尚未提供電子郵件地址以接收有關安全問題的通知。
是否不希望收到有關安全問題 (是 [Y], 否 [N]) [N] 的通知: y
本地系統是否已準備打補丁? [y|n]
y
User Responded with: Y
Backing up files...
Applying sub-patch '17478514' to OH '/opt/app/oracle/product/11.2.0/dbhome_1'
7.完成,並檢查log。
Composite patch 20760982 successfully applied.
OPatch Session completed with warnings.
Log file location: /oracle/product/11.2.0.4/dbhome_1/cfgtoollogs/opatch/opatch2015-10-15_20-50-03PM_1.log
OPatch completed with warnings.
8.例項打補丁
cd $ORACLE_HOME/rdbms/admin
sqlplus / as sysdba
startup
@catbundle.sql psu apply
9.完成例項打補丁,檢查日誌
Check the following log file for errors:
/oracle/product/11.2.0.4/dbhome_1/cfgtoollogs/catbundle/catbundle_PSU_FMSS_APPLY_2015Oct15_20_55_14.log
10.驗證補丁是否應用成功:
[/oracle/product/11.2.0.4/dbhome_1/rdbms/admin]#cd ../../OPatch
[/oracle/product/11.2.0.4/dbhome_1/OPatch]#./opatch lspatches
20760982;Database Patch Set Update : 11.2.0.4.7 (20760982)
11.查詢版本資訊
select * from dba_registry_history;
12.編譯失效物件。
@?/rdbms/admin/utlrp.sql
13.重啟監聽 :lsnrctl start
14.在執行一段時間後正常,更改compatible引數
oracle升級回退方案
一.回退版本到11.2.0.1.0
1.恢復ORACLE相關的目錄。
2.使用閃回功能進行回退(在未更改compatible引數前提下)
--在升級庫前確定閃回是否開啟。
select flashback_on from v$database;
--alter database flashback on;
--建立閃回點
alter database
create restore point UPGRADE_ROLLBACK guarantee flashback database;
select * from v$restore_point;
--升級失敗後執行閃回資料庫到閃回點。
sqlplus / as sysdba
shutdown immediate;
startup mount;
flashback database to restore point UPGRADE_ROLLBACK;
alter database open resetlogs;
--刪除恢復點,無論需不需要閃回記得刪除。
select * from v$restore_point;
drop restore point grpt;
3.升級前後都做一次全庫rman 備份,保證資料遭到損壞時可以恢復。
二.回退opatch 到11.2.0.4.0
1.停止資料庫
停止監聽
lsnrctl status
lsnrctl stop
清理LOCAL=NO的程式
ps -ef| grep LOCAL=NO | grep -v grep | awk '{print "kill -9 " $2}' | sh
停止資料庫
SQL> alter system checkpoint;
SQL> shutdown immediate
確保所有與oracle相關的程式都被停掉,包括本地的sqlplus連線也需要退出
2.補丁回退
su – oracle
$ORACLE_HOME/OPatch/opatch rollback -id 20760982
$ORACLE_HOME/OPatch/opatch lsinventory –bugs_fixed | grep -i database
3.回退資料註冊資訊
cd $ORACLE_HOME/rdbms/admin
sqlplus /nolog
SQL> CONNECT / AS SYSDBA
SQL> STARTUP
SQL> @catbundle_PSU_FMSS_ROLLBACK.sql
SQL> QUIT
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29863023/viewspace-1818053/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle 升級到 11.2.0.2Oracle
- oracle啟動案例一則Oracle
- oracle 10 rac 升級 10.2.0.1升級到10.2.0.5Oracle
- oracle資料庫升級11.2.0.3升級到11.2.0.4Oracle資料庫
- Oracle 11.2.0.4升級到12.2.0.1Oracle
- Oracle 11.2.0.1 升級到11.2.0.3Oracle
- ORACLE 11.2.0.1升級到11.2.0.3Oracle
- Oracle 11.2.0.1升級到11.2.0.3Oracle
- Oracle 10.2.0.1 升級到 10.2.0.4Oracle
- 靜默升級oracle到10.2.0.4Oracle
- oracle 10.2.0.2升級到10.2.0.4Oracle
- 9.2.0.4 升級到10.2.0.5升級後 Oracle Ultra Search 元件NO SCRIPTOracle元件
- oracle rac 10.2.0.1 升級到 oracle 10.2.0.4Oracle
- oracle 9.2.0.1 升級到oracle 9.2.0.8方法Oracle
- oracle從10.2.0.4升級到11.2.0.1的三種升級方法Oracle
- oracle rac 11.2.0.3 升級到11.2.0.4Oracle
- oracle for windows 11.2.0.1升級到11.2.0.4OracleWindows
- (轉)Oracle 10.2.0.1 升級到 10.2.0.4Oracle
- Oracle 升級到 11.2.0.2 注意事項Oracle
- 升級Oracle 10g 到10.2.0.4Oracle 10g
- ORACLE11.2.0.1升級到11.2.0.3Oracle
- 靜默升級oracle 11g (從11.2.0.1升級到11.2.0.4)Oracle
- ORACLE EXADATA升級—從11.2.3.1.0到11.2.3.3.0–(8)升級交換機Oracle
- ORACLE EXADATA升級—從11.2.3.1.0到11.2.3.3.0–(1)升級簡介Oracle
- MySQL 5.6.47升級到5.7.20(一)MySql
- IBM aix下oracle 9.2.0.5 rac 升級到oracle 9.2.0.8IBMAIOracle
- oracle 9i升級到oracle9208Oracle
- Oracle 11g升級到12COracle
- Oracle 18C升級到19COracle
- Oracle 12C升級到18COracle
- Oracle 11.2.0.1升級到11.2.0.4.171017Oracle
- Oracle 32bit 升級到64bitOracle
- oracle 10.1.0.2 升級到10.2.0.4 步驟Oracle
- oracle版本升級:從11.2.0.1到11.2.0.3Oracle
- ORACLE9I升級到10GOracle
- Windows升級到oracle 11g的異機物理升級文件(冷備)WindowsOracle
- ORACLE EXADATA升級—從11.2.3.1.0到11.2.3.3.0–(7)升級Bundle Patch 23Oracle
- oracle 10.2.0.1 rac 升級到10.2.0.4 rac時,dbua升級的元件列表Oracle元件