Linux下Oracle 10.2.0.1升級到10.2.0.4總結

最近部署測試環境時,將測試環境ORACLE數據庫從10.2.0.1升級到了10.2.0.4,順便整理記錄一下升級過程。sql

實驗環境: 操做系統:Oracle Linux Server release 5.7 數據庫:Oracle 10.2.0.1shell

下載解壓補丁包數據庫

   1: [oracle@DB-Server tmp]$ unzip p6810189_10204_Linux-x86-64.zip 
   2:  
   3: [oracle@DB-Server Disk1]$ ls
   4: 10204_buglist.htm  install    patch_note.htm  response  runInstaller  stage

解壓後生成Disk1目錄,裏面patch_note.htm 有詳細的升級補丁的介紹,建議升級補丁前,應該好好看看patch_note.htm,裏面介紹了Oracle Database、Oracle Real Application Clusters、Oracle Database Client、Oracle Database Vault等各種狀況升級。bash

安裝前任務session

1:操做系統要求oracle

以下所示,官方文檔有system requirements,即必須知足操做系統要求才能打補丁,通常狀況下不多有不知足條件。app

System Requirementsdom

The following are the system requirements for this patch set:測試

Operating Systemui

Asianux 2.0

Asianux 3.0

Oracle Enterprise Linux 4.0/Oracle VM

Oracle Enterprise Linux 5.0/Oracle VM

Red Hat Enterprise Linux AS/ES 3.0

Red Hat Enterprise Linux AS/ES 4.0/Oracle VM

Red Hat Enterprise Linux AS/ES 5.0/Oracle VM

SUSE Linux Enterprise Server (SLES) 9

SUSE Linux Enterprise Server (SLES) 10

Oracle Database 10g (10.2.0.1) or later

2:檢查設置環境變量

   1: [oracle@DB-Server ~]$ echo $ORACLE_HOME
   2: /u01/app/oracle/product/dbhome_1
   3: [oracle@DB-Server ~]$ echo $ORACLE_SID
   4: epps
   5: [oracle@DB-Server ~]$ 

3:查看安裝補丁狀況

   1: [oracle@DB-Server OPatch]$ ./opatch 
   2: Invoking OPatch 10.2.0.1.0
   3:  
   4: Oracle interim Patch Installer version 10.2.0.1.0
   5: Copyright (c) 2005, Oracle Corporation.  All rights reserved..
   6:  
   7:  
   8: Oracle Home       : /u01/app/oracle/product/dbhome_1
   9: Central Inventory : /u01/app/oracle/oraInventory
  10:    from           : /u01/app/oracle/product/dbhome_1/oraInst.loc
  11: OPatch version    : 10.2.0.1.0
  12: OUI version       : 10.2.0.1.0
  13: OUI location      : /u01/app/oracle/product/dbhome_1/oui
  14: Log file location : /u01/app/oracle/product/dbhome_1/cfgtoollogs/opatch/opatch-2014_Mar_11_15-22-45-CST_Tue.log
  15:  
  16:  
  17:  Usage: opatch [ -help ] [ -r[eport] ] [ command ]
  18:  
  19:             command := apply
  20:                        lsinventory
  21:                        query
  22:                        rollback
  23:                        version
  24:  
  25:  <global_arguments> := -help       Displays the help message for the command.
  26:                        -report     Print the actions without executing (deprecated).
  27:  
  28:  example:
  29:    'opatch -help'
  30:    'opatch apply -help'
  31:    'opatch lsinventory -help'
  32:    'opatch rollback -help'
  33:  
  34:  
  35: OPatch succeeded.
  36: [oracle@DB-Server OPatch]$ ./opatch lsinventory -all
  37: Invoking OPatch 10.2.0.1.0
  38:  
  39: Oracle interim Patch Installer version 10.2.0.1.0
  40: Copyright (c) 2005, Oracle Corporation.  All rights reserved..
  41:  
  42:  
  43: Oracle Home       : /u01/app/oracle/product/dbhome_1
  44: Central Inventory : /u01/app/oracle/oraInventory
  45:    from           : /u01/app/oracle/product/dbhome_1/oraInst.loc
  46: OPatch version    : 10.2.0.1.0
  47: OUI version       : 10.2.0.1.0
  48: OUI location      : /u01/app/oracle/product/dbhome_1/oui
  49: Log file location : /u01/app/oracle/product/dbhome_1/cfgtoollogs/opatch/opatch-2014_Mar_11_15-23-02-CST_Tue.log
  50:  
  51: Lsinventory Output file location : /u01/app/oracle/product/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory-2014_Mar_11_15-23-02-CST_Tue.txt
  52:  
  53: --------------------------------------------------------------------------------
  54: List of Oracle Homes:
  55:   Name          Location
  56:    OraDb10g_home1         /u01/app/oracle/product/dbhome_1
  57:  
  58: Installed Top-level Products (1): 
  59:  
  60: Oracle Database 10g                                                  10.2.0.1.0
  61: There are 1 products installed in this Oracle Home.
  62:  
  63:  
  64: There are no Interim patches installed in this Oracle Home.
  65:  
  66: --------------------------------------------------------------------------------
  67:  
  68: OPatch succeeded.

4:檢查Oracle Time Zone Definitions

clip_image001

5:中止全部進程(Stop All Processes)

$ emctl stop dbconsole

$ isqlplusctl stop

$ lsnrctl stop

SQL> SHUTDOWN IMMEDIATE

   1: [oracle@DB-Server ~]$ emctl stop dbconsole
   2: TZ set to Asia/Chungking
   3: OC4J Configuration issue. /u01/app/oracle/product/dbhome_1/oc4j/j2ee/OC4J_DBConsole_DB-Server.localdomain_epps not found. 
   4: [oracle@DB-Server ~]$ isqlplusctl stop
   5: iSQL*Plus 10.2.0.1.0
   6: Copyright (c) 2003, 2005, Oracle.  All rights reserved.
   7: getnameinfo failed
   8: getnameinfo failed
   9: iSQL*Plus instance on port 5560 is not running ...
  10: [oracle@DB-Server ~]$ lsnrctl stop
  11:  
  12: LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 11-MAR-2014 15:33:20
  13:  
  14: Copyright (c) 1991, 2005, Oracle.  All rights reserved.
  15:  
  16: Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.10.11)(PORT=1521)))
  17: The command completed successfully
  18:  
  19: [oracle@DB-Server ~]$ sqlplus / as sysdba
  20:  
  21: SQL*Plus: Release 10.2.0.1.0 - Production on Tue Mar 11 15:34:02 2014
  22:  
  23: Copyright (c) 1982, 2005, Oracle.  All rights reserved.
  24:  
  25:  
  26: Connected to:
  27: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
  28: With the Partitioning, OLAP and Data Mining options
  29:  
  30: SQL> shutdown immediate;
  31: Database closed.
  32: Database dismounted.
  33: ORACLE instance shut down.

備份數據庫

由於是測試數據庫,能夠作備份或不作備份關係不大,生產環境則必須先作一個冷備或熱備。

安裝補丁包

Oracle提供了兩種方式安裝補丁包,即圖形化安裝或靜默安裝。即Installing the Oracle Database 10g Patch Set Interactively 和

Installing the Oracle Database 10g Patch Set Noninteractively 安裝。

下面咱們先用Installing the Oracle Database 10g Patch Set Interactively

Installing the Oracle Database 10g Patch Set Interactively

1.Log in as the oracle user.

2.If you are not installing the software on the local computer, then run the following command on remote machine:

Bourne, Bash, or Korn shell:

$ export DISPLAY=localhost:0.0

C shell:

% setenv DISPLAY local_host:0.0

In this example, local_host is the host name or IP address of the computer that you want to use to display Oracle Universal Installer.

Now to enable X applications, run the following command on the machine that you want to use to display Oracle Universal Installer:

$ xhost + [fully_qualified_remote_host_name]

注意上面事項,不然有可能出現下面錯誤信息

   1: [oracle@DB-Server Disk1]$ ./runInstaller 
   2:  
   3: Starting Oracle Universal Installer...
   4:  
   5: Checking installer requirements...
   6:  
   7: Checking operating system version: must be redhat-3, SuSE-9, SuSE-10, redhat-4, redhat-5, UnitedLinux-1.0, asian
   8:  
   9: ux-1, asianux-2 or asianux-3
  10:  
  11: Passed
  12:  
  13: All installer requirements met.
  14:  
  15: Preparing to launch Oracle Universal Installer from /tmp/OraInstall2014-03-11_03-39-25PM. Please wait ...[oracle
  16:  
  17: @DB-Server Disk1]$ Oracle Universal Installer, Version 10.2.0.4.0 Production
  18:  
  19: Copyright (C) 1999, 2008, Oracle. All rights reserved.
  20:  
  21: Xlib: connection to ":0.0" refused by server
  22:  
  23: Xlib: No protocol specified
  24:  
  25: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
  26:  
  27: :0.0
  28:  
  29: :0.0
  30:  
  31: OUI-10025:Unable to start an interactive install session because of the following error:Can't connect to X11 win
  32:  
  33: dow server using ':0.0' as the value of the DISPLAY variable. The DISPLAY environment variable should be set to 
  34:  
  35: <hostname or IP address>:<screen>, where the <screen> is usually '0.0'.
  36:  
  37: OUI-10026:Depending on the Unix Shell, you can use one of the following commands as examples to set the DISPLAY 
  38:  
  39: environment variable:
  40:  
  41: - For csh: % setenv DISPLAY 192.168.1.128:0.0
  42:  
  43: - For sh, ksh and bash: $ DISPLAY=192.168.1.128:0.0; export DISPLAY
  44:  
  45: Use the following command to see what shell is being used:
  46:  
  47: echo $SHELL
  48:  
  49: Use the following command to view the current DISPLAY environment variable setting:
  50:  
  51: echo $DISPLAY
  52:  
  53: - Make sure that client users are authorized to connect to the X Server.
  54:  
  55: OUI-10027:To enable client users to access the X Server, open an xterm, dtterm or xconsole as the user that star
  56:  
  57: ted the session and type the following command:
  58:  
  59: % xhost +
  60:  
  61: To test that the DISPLAY environment variable is set correctly, run a X11 based program that comes with the nati
  62:  
  63: ve operating system such as 'xclock':
  64:  
  65: % <full path to xclock... see below>
  66:  
  67: If you are not able to run xclock successfully, please refer to your PC-X Server or OS vendor for further assistance.
  68:  
  69: Typical path for 'xclock': '/usr/X11R6/bin/xclock'
  70:  
  71: [oracle@DB-Server ~]$ 
  72:  

[oracle@DB-Server Disk1]$ ./runInstaller

clip_image002

clip_image003

clip_image004

clip_image005

clip_image006

clip_image007

在root帳號下執行/u01/app/oracle/product/dbhome_1/root.sh

clip_image008

clip_image009

安裝後任務

升級數據庫

可使用手工升級數據庫或使用DBUA界面安裝數據庫。下面咱們選擇使用手工升級數據庫

clip_image010

1:Start the database in the UPGRADE mode

   1: [oracle@DB-Server ~]$ sqlplus / as sysdba
   2:  
   3: SQL*Plus: Release 10.2.0.4.0 - Production on Tue Mar 11 16:27:30 2014
   4:  
   5: Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.
   6:  
   7: Connected to an idle instance.
   8:  
   9: SQL> startup upgrade
  10: ORACLE instance started.
  11:  
  12: Total System Global Area 2483027968 bytes
  13: Fixed Size                  2085968 bytes
  14: Variable Size             603982768 bytes
  15: Database Buffers         1862270976 bytes
  16: Redo Buffers               14688256 bytes
  17: Database mounted.
  18: Database opened.

2.Set the system to spool results to a log file for later analysis:

SQL> SPOOL upgrade_info.log

3.Run the Pre-Upgrade Information Tool:

   1: SQL> @?/rdbms/admin/utlu102i.sql
   2: Oracle Database 10.2 Upgrade Information Utility    03-11-2014 16:30:19
   3: .
   4: **********************************************************************
   5: Database:
   6: **********************************************************************
   7: --> name:       EPPS
   8: --> version:    10.2.0.1.0
   9: --> compatible: 10.2.0.1.0
  10: --> blocksize:  8192
  11: .
  12: **********************************************************************
  13: Tablespaces: [make adjustments in the current environment]
  14: **********************************************************************
  15: --> SYSTEM tablespace is adequate for the upgrade.
  16: .... minimum required size: 544 MB
  17: .... AUTOEXTEND additional space required: 4 MB
  18: --> UNDOTBS1 tablespace is adequate for the upgrade.
  19: .... minimum required size: 400 MB
  20: .... AUTOEXTEND additional space required: 270 MB
  21: --> SYSAUX tablespace is adequate for the upgrade.
  22: .... minimum required size: 410 MB
  23: --> TEMP tablespace is adequate for the upgrade.
  24: .... minimum required size: 58 MB
  25: --> EXAMPLE tablespace is adequate for the upgrade.
  26: .... minimum required size: 69 MB
  27: .
  28: **********************************************************************
  29: Update Parameters: [Update Oracle Database 10.2 init.ora or spfile]
  30: **********************************************************************
  31: -- No update parameter changes are required.
  32: .
  33: **********************************************************************
  34: Renamed Parameters: [Update Oracle Database 10.2 init.ora or spfile]
  35: **********************************************************************
  36: -- No renamed parameters found. No changes are required.
  37: .
  38: **********************************************************************
  39: Obsolete/Deprecated Parameters: [Update Oracle Database 10.2 init.ora or spfile]
  40: **********************************************************************
  41: -- No obsolete parameters found. No changes are required
  42: .
  43: **********************************************************************
  44: Components: [The following database components will be upgraded or installed]
  45: **********************************************************************
  46: --> Oracle Catalog Views         [upgrade]  VALID
  47: --> Oracle Packages and Types    [upgrade]  VALID
  48: --> JServer JAVA Virtual Machine [upgrade]  VALID
  49: --> Oracle XDK for Java          [upgrade]  VALID
  50: --> Oracle Java Packages         [upgrade]  VALID
  51: --> Oracle Text                  [upgrade]  VALID
  52: --> Oracle XML Database          [upgrade]  VALID
  53: --> Oracle Workspace Manager     [upgrade]  VALID
  54: --> Oracle Data Mining           [upgrade]  VALID
  55: --> OLAP Analytic Workspace      [upgrade]  VALID
  56: --> OLAP Catalog                 [upgrade]  VALID
  57: --> Oracle OLAP API              [upgrade]  VALID
  58: --> Oracle interMedia            [upgrade]  VALID
  59: --> Spatial                      [upgrade]  VALID
  60: --> Expression Filter            [upgrade]  VALID
  61: --> EM Repository                [upgrade]  VALID
  62: --> Rule Manager                 [upgrade]  VALID
  63: .
  64: **********************************************************************
  65: Miscellaneous Warnings
  66: **********************************************************************
  67: PL/SQL procedure successfully completed.

查看已經安裝的補丁狀況:

   1: [oracle@DB-Server OPatch]$ ./opatch lsinventory -all
   2: Invoking OPatch 10.2.0.4.2
   3:  
   4: Oracle Interim Patch Installer version 10.2.0.4.2
   5: Copyright (c) 2007, Oracle Corporation.  All rights reserved.
   6:  
   7:  
   8: Oracle Home       : /u01/app/oracle/product/dbhome_1
   9: Central Inventory : /u01/app/oracle/oraInventory
  10:    from           : /etc/oraInst.loc
  11: OPatch version    : 10.2.0.4.2
  12: OUI version       : 10.2.0.4.0
  13: OUI location      : /u01/app/oracle/product/dbhome_1/oui
  14: Log file location : /u01/app/oracle/product/dbhome_1/cfgtoollogs/opatch/opatch2014-03-11_16-55-25PM.log
  15:  
  16: Lsinventory Output file location : /u01/app/oracle/product/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory2014-03-11_16-55-25PM.txt
  17:  
  18: --------------------------------------------------------------------------------
  19: List of Oracle Homes:
  20:   Name          Location
  21:    OraDb10g_home1         /u01/app/oracle/product/dbhome_1
  22:  
  23: Installed Top-level Products (2): 
  24:  
  25: Oracle Database 10g                                                  10.2.0.1.0
  26: Oracle Database 10g Release 2 Patch Set 3                            10.2.0.4.0
  27: There are 2 products installed in this Oracle Home.
  28:  
  29:  
  30: There are no Interim patches installed in this Oracle Home.
  31:  
  32:  
  33: --------------------------------------------------------------------------------
  34:  
  35: OPatch succeeded.

clip_image011

關閉數據庫,而後執行腳本:

SQL> STARTUP UPGRADE

SQL> SPOOL patch.log

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

SQL> SPOOL OFF

@?/rdbms/admin/catupgrd.sql

clip_image012

   1: SQL> shutdown immediate;
   2:  
   3: Database closed.
   4:  
   5: Database dismounted.
   6:  
   7: ORACLE instance shut down.
   8:  
   9: SQL> startup
  10:  
  11: ORACLE instance started.
  12:  
  13: Total System Global Area 2483027968 bytes
  14:  
  15: Fixed Size 2085968 bytes
  16:  
  17: Variable Size 637537200 bytes
  18:  
  19: Database Buffers 1828716544 bytes
  20:  
  21: Redo Buffers 14688256 bytes
  22:  
  23: Database mounted.
  24:  
  25: Database opened.
  26:  
  27: SQL> @?/rdbms/admin/utlrp.sql
  28:  

驗證

clip_image013

   1: SQL> COL COMP_NAME FOR A50
   2: SQL> COL VERSION FOR A12
   3: SQL> COL STATUS FOR A12
   4: SQL> SELECT COMP_NAME, VERSION, STATUS FROM SYS.DBA_REGISTRY;
   5:  
   6: COMP_NAME                                          VERSION      STATUS
   7: -------------------------------------------------- ------------ ------------
   8: Oracle Database Catalog Views                      10.2.0.4.0   VALID
   9: Oracle Database Packages and Types                 10.2.0.4.0   VALID
  10: Oracle Workspace Manager                           10.2.0.4.3   VALID
  11: JServer JAVA Virtual Machine                       10.2.0.4.0   VALID
  12: Oracle XDK                                         10.2.0.4.0   VALID
  13: Oracle Database Java Packages                      10.2.0.4.0   VALID
  14: Oracle Expression Filter                           10.2.0.4.0   VALID
  15: Oracle Data Mining                                 10.2.0.4.0   VALID
  16: Oracle Text                                        10.2.0.4.0   VALID
  17: Oracle XML Database                                10.2.0.4.0   VALID
  18: Oracle Rule Manager                                10.2.0.4.0   VALID
  19:  
  20: COMP_NAME                                          VERSION      STATUS
  21: -------------------------------------------------- ------------ ------------
  22: Oracle interMedia                                  10.2.0.4.0   VALID
  23: OLAP Analytic Workspace                            10.2.0.4.0   VALID
  24: Oracle OLAP API                                    10.2.0.4.0   VALID
  25: OLAP Catalog                                       10.2.0.4.0   VALID
  26: Spatial                                            10.2.0.4.0   VALID
  27: Oracle Enterprise Manager                          10.2.0.4.0   VALID
  28:  
  29: 17 rows selected.
  30:  

若是你須要升級emca,那麼能夠經過emca –upgrade db命令實現。以下所示

   1: [oracle@DB-Server ~]$ emca -upgrade db
   2:  
   3: STARTED EMCA at Mar 12, 2014 2:59:18 PM
   4: EM Configuration Assistant, Version 10.2.0.1.0 Production
   5: Copyright (c) 2003, 2005, Oracle.  All rights reserved.
   6:  
   7: Enter the following information:
   8: ORACLE_HOME for the database to be upgraded: /u01/app/oracle/product/dbhome_1
   9: Database SID: epps
  10: Listener port number: 15
  11: ...........
相關文章
相關標籤/搜索