ORACLE 10g版本升級(10.2.0.1-10.2.0.5) for linux

火星人 @ 2014-03-08 , reply:0


Linux(RHEL5)下ORACLE 10g版本升級(10.2.0.1.0-10.2.0.5.0)操作文檔

 
 
 

系統環境:RHEL5

文檔版本:V1.0.1

整理:Kevin.Lu

更新時間:2011-08-27

備註:DBA專用

目錄

Linux(RHEL5)下ORACLE_10g_10.2.0.1.0升級到10.2.0.5.0操作文檔(超給力版本)... 1

目錄... 2

1. 文檔更新記錄... 3

2. 文檔說明... 3

3. 升級前,需要做的準備工作:... 4

3.1.1. 臨時增加shared pool和java pool的大小... 4

3.1.2. 備份oracle軟體,備份資料庫... 4

3.1.3. 停掉監聽,OEM,ISQLPLUS等... 4

3.1.4. 上傳補丁包... 4

4. 資料庫軟體產品的升級:... 5

4.1.1. 打開控制X server訪問許可權... 5

4.1.2. 執行runInstaller,開啟安裝OUI界面... 5

5. 進行資料庫的升級操作:... 11

5.1.1. 開始升級及更新數據字典... 11

5.1.2. 重編譯失效對象... 12

5.1.3. 察看資料庫安裝的組件、版本、狀態: 12

5.1.4. 開啟監聽,OEM及ISQLPLUS. 12

6. 小結... 13

6.1.1. 全新安裝的情況... 13

6.1.2. 非全新安裝的情況... 13

6.1.3. 升級失敗,嘗試回退機制... 14

1. 文檔更新記錄

時間

修改人

版本號

修改說明

2011.08.20

Kevin.Lu

1.0.0

建立文檔

2011.08.27

Kevin.Lu

1.0.1

梳理文檔

2. 文檔說明

本文檔規範oracle10.2.0.1.0升級到10.2.0.5.0版本的升級流程及操作,供DBA人員在進行資料庫版本升級的時參考使用.

升級操作的具體步驟如下:

3. 升級前,需要做的準備工作: 3.1.1. 臨時增加shared pool和java pool的大小

確保參數shared_pool_size和java_pool_size至少為150M大小,保證catupgrd.sql(10g)升級腳本運行正常(9i版本中是catpatch.sql)

[root@10gpri ~]# su – oracle

[oracle@10gpri Disk1]$ sqlplus / as sysdba

SQL>startup

SQL>alter system set shared_pool_size='150M' scope=spfile;

SQL> alter system set java_pool_size='150M' scope=spfile;

SQL>shutdown immediate

3.1.2. 備份oracle軟體,備份資料庫

[oracle@10gpri Disk1]$cp -r $ORACLE_HOME/product/10.2.0/db_1 /bk/oracle_product_back

[oracle@10gpri Disk1]$ tar -cvfz /bk/oracle_backup.tar.gz $ORACLE_BASE /oradata/ora10g/*

3.1.3. 停掉監聽,OEM,ISQLPLUS等

[oracle@10gpri ~]$ lsnrctl stop

[oracle@10gpri ~]$ emctl stop dbconsole

[oracle@10gpri ~]$ isqlplusctl stop

3.1.4. 上傳補丁包

將p8202632_10205_LINUX.zip上傳到/bk並解壓:

[oracle@10gpri bk]$ ls Disk1/

install patch_note.htm response runInstaller stage

[oracle@10gpri Disk1]$ export LANG=en

4. 資料庫軟體產品的升級: 4.1.1. 打開控制X server訪問許可權

[root@10gpri ~]# xhost

access control disabled, clients can connect from any host

[root@10gpri ~]# su – oracle

4.1.2. 執行runInstaller,開啟安裝OUI界面

[oracle@10gpri Disk1]$ ./runInstaller

Starting Oracle Universal Installer...

Checking installer requirements...

Checking operating system version: must be redhat-3, SuSE-9, SuSE-10, redhat-4, redhat-5, redhat-6, UnitedLinux-1.0, asianux-1, asianux-2, asianux-3, enterprise-4, enterprise-5 or SuSE-11 Passed

All installer requirements met.

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2011-08-26_10-34-03AM. Please wait ...[oracle@10gpri Disk1]$ Oracle Universal Installer, Version 10.2.0.5.0 Production

Copyright (C) 1999, 2010, Oracle. All rights reserved.

出現OUI圖形界面如下:

點擊 ”Next”,進入選擇oracle_home界面:

只有一個資料庫的話默認即可,接著點擊 “Next”,出現如下對話框:

之前安裝過資料庫軟體,這裡提示安裝目的目錄非空,是否覆蓋,點擊”Yes”即可:

填寫一個郵箱地址,取消第二項的對鉤,繼續點擊 ”Next”,出現下圖:

打上對鉤,點擊 ”Continue”,出現下圖示:

檢查系統參數配置通過,點擊 “Next”,如下:

點擊 “Install”按鈕,開始安裝升級資料庫軟體,過程如下圖所示:

安裝完成後,會出現如下一個對話框:

按照上面對話框的要求,打開另一個終端,以root身份登錄,執行腳本/u01/oracle/product/10.2.0/db_1/root.sh,該腳本會提示是否覆蓋已存在的目錄,默認為否即可.

再回到剛才的終端,點擊”OK”按鈕,彈出如下界面:

此時提示版本升級已經成功,點擊 ”Exit”按鈕,退出即可.

至此,資料庫軟體產品升級已經完成.

5. 進行資料庫的升級操作: 5.1.1. 開始升級及更新數據字典

[oracle@10gpri Disk1]$ sqlplus / as sysdba

SQL> startup upgrade;

SQL> select tablespace_name, sum(bytes)/(1024*1024) "Free M" from dba_free_space where tablespace_name = 'SYSTEM' group by tablespace_name;

TABLESPACE_NAME Free M

------------------------------ ----------

SYSTEM 10.375

SQL> SPOOL patch.log

SQL>@?/rdbms/admin/catupgrd.sql //此腳本執行時間大概需要20分鐘左右

Total Upgrade Time: 00:24:46 //設置JAVA_POOL_SIZE為150M時的升級所用時間

Total Upgrade Time: 01:06:39 //不設置JAVA_POOL_SIZE為150M時的升級所用時間,,大家一定要記得設置這個參數啊!!

SQL>SPOOL OFF

5.1.2. 重編譯失效對象

SQL>shutdown immediate

SQL> startup

SQL> @?/rdbms/admin/utlrp.sql

SQL> @?/rdbms/admin/catalog.sql;

SQL> @?/rdbms/admin/catproc.sql;

5.1.3. 察看資料庫安裝的組件、版本、狀態:

SQL> shutdown immediate;

SQL> startup

SQL> select owner,object_name,subobject_name,object_type,status from dba_objects where status<>'VALID';

SQL> select status from v$instance;

SQL> select * from v$version;

SQL> col comp_name format a30

SQL>col version format a30

SQL>col status format a10

SQL> SELECT comp_name, version, status FROM dba_registry;

SQL>select username from dba_users;

SQL> quit

5.1.4. 開啟監聽,OEM及ISQLPLUS

[oracle@10gpri Disk1]$ emctl start dbconsole

[oracle@10gpri Disk1]$ isqlplusctl start

[oracle@10gpri Disk1]$ lsnrctl start

http://ip:1158/em (IE方式訪問OEM)

http://ip:5560/isqlplus (IE方式訪問isqlplus)

http://ip:5560/isqlplus/dba (IE方式訪問isqlplus dba)

6. 小結

以上升級操作可以總結為以下幾個要點:

6.1.1. 全新安裝的情況

如果是全新安裝的資料庫,直接運行補丁包就可以了

p8202632_10205_LINUX.zip

./runInstaller

6.1.2. 非全新安裝的情況

如果是已經創建了資料庫,並且有應用在上面,則先停止相關應用

再按以下步驟執行:

0)shutdown 資料庫,並停止所有oracle相關的服務和stop listener .

$ isqlplusctl stop

$ emctl stop dbconsole

$ lsnrctl stop

注意: 需要停止Distributed Transaction Coordinator服務/iis服務/web publish(www)/;

1)冷備份資料庫

2)運行安裝補丁程序

3)startup upgrade; lsnrctl start

3.1)修改java_pool_size / large_pool_size=150M

SQL> ALTER SYSTEM SET JAVA_POOL_SIZE=’150M’ SCOPE=spfile;

SQL>spool upgrd.log

4)運行腳本

SQL>@?/rdbms/admin/catupgrd.sql

SQL>spool off

5)shutdown immediate

6)startup

7)運行腳本

SQL>@?/rdbms/admin/utlrp.sql;

SQL>@?/rdbms/admin/catalog.sql;

SQL>@?/rdbms/admin/catproc.sql;

8)察看資料庫安裝的組件、版本、狀態:

col comp_name format a30

col version format a30

col status format a10

SELECT comp_name, version, status FROM dba_registry;

6.1.3. 升級失敗,嘗試回退機制

如果升級失敗,可以嘗試回退機制

SQL>startup downgrade

SQL>spool downgrade.log

SQL>@catdwgrd.sql (10.2.0.1運行的是這個,而10.1降級用的是d92000.sql,即dold_release.sql)

SQL>spool off

SQL>shutdown immediate




[火星人 via ] ORACLE 10g版本升級(10.2.0.1-10.2.0.5) for linux已經有129次圍觀

http://www.coctec.com/docs/linux/show-post-45993.html