ORACLE 10.2.0.1 单机升级至10.2.0.4

ORACLE 10.2.0.1 单机升级至10.2.0.4

Table of Contents

  • 1. 安装Oracle软件
    • 1.1. 安装文件
    • 1.2. 安装依赖包
    • 1.3. 修改内核参数
    • 1.4. 添加用户和组
    • 1.5. 修改Oracle用户环境变量
    • 1.6. 创建相关路径
    • 1.7. 修改oracle系统兼容列表
    • 1.8. 修改响应文件
    • 1.9. 静默安装
    • 1.10. 升级
      • 1.10.1. 配置系统兼容列表
      • 1.10.2. 配置升级响应文件
      • 1.10.3. 安装补丁
      • 1.10.4. 升级数据字典
      • 1.10.5. 重新编译无效对象
      • 1.10.6. 升级catalog
      • 1.10.7. 回退

1 安装Oracle软件

 

1.1 安装文件

Oracle 10G 安装,目标是10.2.0.4 ,这里是先安装10.2.0.1,然后再升级到 10.2.0.4 . 需要提前下载 以下几个文件:

  • p6810189_10204_Linux-x86-64.zip
  • 10201_database_linux_x86_64.cpio.gz

解压到Oracle 的$HOME路径,执行下面命令,进行解压:

gunzip 10201_database_linux_x86_64.cpio.gz
cpio -idmv < 10201_database_linux_x86_64.cpio
unzip p6810189_10204_Linux-x86-64.zip

解压后的结果如下:

[oracle@boss1 ~]$ ls
10201_database_linux_x86_64.cpio  database  Disk1  p6810189_10204_Linux-x86-64.zip  README.html

其中database 是10.2.0.1的安装包。 Disk1 是 升级包。

1.2 安装依赖包

rpm -q binutils compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf \
elfutils-libelf-devel gcc gcc-c++ glibc glibc.i686 glibc-common glibc-devel \
glibc-devel.i686 glibc-headers ksh libaio libaio.i686 libaio-devel libaio-devel \
libgcc libgcc libstdc++ libstdc++ libstdc++-devel make sysstat libXp.i686 \
libXt.i686 libXtst.i686 |grep "not installed"|xarsg -i yum install -y {}

如果 libXp.i686 libXt.i686 libXtst.i686 三个包没有安装上,oracle 安装进行在执行configToolFailedCommands时,会报错。所以安装完成后,最好再确认一下是否有相关的库文件:

ls -la /lib/libXt.so.6
ls -la /lib/libXtst.so.6
ls -la /lib/libXp.so.6
ls -la /usr/lib/libXt.so.6
ls -la /usr/lib/libXtst.so.6
ls -la /usr/lib/libXp.so.6

如果没有。请参考下面的处理方式。

如果在安装过程中出现如下错误提示:

SEVERE:OUI-10104: 一些 Configuration Assistant 失败。强烈建议您此时重试这些 Configuration Assistant。如果任何 "建议" 的 Assistant 没有成功运行, 那么将无法正确配置系统。请选择运行失败的 Assistant, 然后单击 '重试' 按钮进行重试。
--------------------------------------
"/u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/configToolFailedCommands" 脚本包含所有失败的, 跳过的或取消的命令。可使用此文件在 OUI 外运行这些 Configuration Assistant。请注意, 执行此脚本前, 您可能需要用口令 (如果有) 来更新此脚本。
"/u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/configToolAllCommands" 脚本包含要由 Configuration Assistant 执行的所有命令。可使用此文件在 OUI 外运行 Configuration Assistant。请注意, 执行此脚本前, 您可能需要用口令 (如果有) 更新此脚本。

那么就需要手动将这些库文件链接到系统库路径中。注意,使用root用户执行。

ln -s $ORACLE_HOME/lib32/stubs/libXp.so.6  /lib/libXp.so.6
ln -s $ORACLE_HOME/lib32/stubs/libXt.so.6  /lib/libXt.so.6
ln -s $ORACLE_HOME/lib32/stubs/libXtst.so.6 /usr/lib/libXtst.so.6

在本示例中,执行的命令如下:

ln -s /u01/app/oracle/product/10.2.0/db_1/lib32/stubs/libXp.so.6  /lib/libXp.so.6
ln -s /u01/app/oracle/product/10.2.0/db_1/lib32/stubs/libXt.so.6  /lib/libXt.so.6
ln -s /u01/app/oracle/product/10.2.0/db_1/lib32/stubs/libXtst.so.6 /usr/lib/libXtst.so.6

1.3 修改内核参数

以root用户执行。

cat >> /etc/sysctl.conf <> /etc/security/limits.conf <> /etc/profile < 
    

1.4 添加用户和组

root 用户执行。

groupadd -g 501 oinstall
groupadd -g 502 dba
useradd -g oinstall -G dba oracle
passwd oracle

1.5 修改Oracle用户环境变量

以Oracle 用户执行。

cat >> .bash_profile < 
    

1.6 创建相关路径

root用户执行。

chown -R oracle:oinstall /u01/
chmod -R 775 /u01

以Oracle 用户执行:

mkdir -p $ORACLE_HOME

1.7 修改oracle系统兼容列表

Oracle 兼容哪些系统, 是在配置文件中配置的。我们可以修改这些配置文件,达到正常安装的目的。但是这并不是万能的。版本差距过大,同样安装不了。

cd ~/database/install
vi oraparam.ini
#找到下面两行;
[Certified Versions]
Linux=redhat-3,SuSE-9,redhat-4,UnitedLinux-1.0,asianux-1,asianux-2
# 第二行,是oracle10G支持的系统列表。我们把el5,el6 也加进去。如下:
Linux=redhat-3,SuSE-9,redhat-4,UnitedLinux-1.0,asianux-1,asianux-2,redhat-5,redhat-6
# 这样配置后,RHEL/CentOS 5、6两个版本都可以正常安装Oracle 10G。
vi  oraparamsilent.ini
# 相同的方式,调整 oraparamsilent.ini 中的默认配置。

1.8 修改响应文件

oracle 用户执行。

RESPONSEFILE_VERSION=2.2.1.0.0
UNIX_GROUP_NAME=oinstall                                # 配置oracle 用户的组,一般为oinstall
FROM_LOCATION="../stage/products.xml"
NEXT_SESSION_RESPONSE=
ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1         # 配置ORACLE_HOME 变量值。
ORACLE_HOME_NAME="OraDBHome1"                           # 配置ORACLE_HOME 别名,记住此名。
TOPLEVEL_COMPONENT={"oracle.server","10.2.0.1.0"}
DEINSTALL_LIST={"oracle.server","10.2.0.1.0"}
SHOW_SPLASH_SCREEN=false
SHOW_WELCOME_PAGE=false
SHOW_NODE_SELECTION_PAGE=false
SHOW_SUMMARY_PAGE=false
SHOW_INSTALL_PROGRESS_PAGE=false
SHOW_CONFIG_TOOL_PAGE=false
SHOW_XML_PREREQ_PAGE=false
SHOW_ROOTSH_CONFIRMATION=true
SHOW_END_SESSION_PAGE=false
SHOW_EXIT_CONFIRMATION=false
NEXT_SESSION=false
NEXT_SESSION_ON_FAIL=false
SHOW_DEINSTALL_CONFIRMATION=false
SHOW_DEINSTALL_PROGRESS=false
RESTART_SYSTEM=
RESTART_REMOTE_SYSTEM=
REMOVE_HOMES=
ORACLE_HOSTNAME=
SHOW_END_OF_INSTALL_MSGS=false
CLUSTER_NODES=
COMPONENT_LANGUAGES={"en"}
INSTALL_TYPE="EE"
s_nameForDBAGrp=
s_nameForOPERGrp=
n_configurationOption=
s_ASMSYSPassword=""
s_ASMSYSPasswordAgain=""
n_dbType=
oracle.assistants.server:s_responseFileName=
s_globalDBName=
s_dbSid=
s_dbRetChar="WE8ISO8859P1"
b_loadExampleSchemas=false
b_useDBControl=true
b_receiveEmailNotification=false
s_dlgEMSMTPServer=
s_dlgEMEmailAddress=
s_dlgEMCentralAgentSelected=
n_dbStorageType=
s_mountPoint=
s_rawDeviceMapFileLocation=
b_enableAutoBackup=false
b_useFileSystemForRecovery=true
s_dlgRBORecoveryLocation=
s_dlgRBOUsername=
s_dlgRBOPassword=
s_dlgASMCfgDiskGroupName="DATA"
s_dlgASMCfgDiskDiscoveryString=
n_dlgASMCfgRedundancySelected=
sl_dlgASMCfgSelectableDisks=
sl_dlgASMCfgDiskSelections=
sl_dlgASMDskGrpSelectedGroup={" "," "," "," "}
b_centrallyManageASMInstance=true
b_useSamePassword=true
s_superAdminSamePasswd=
s_superAdminSamePasswdAgain=
sl_superAdminPasswds=
sl_superAdminPasswdsAgain=
n_performUpgrade=0
n_upgradeDB=0
s_dbOHSelectedForUpgrade=""
s_dbSIDSelectedForUpgrade=""
n_upgradeASM=0
s_dbSelectedUsesASM="no"
sl_upgradableSIDBInstances={}
sl_upgradableRACDBInstances={}
n_dbSelection=0
b_stateOfUpgradeASMCheckbox=false
b_stateOfUpgradeDBCheckbox=false
b_oneClick=false
s_dlgASMCfgRedundancyValue=""
s_dlgASMCfgExistingFreeSpace="0"
s_dlgASMCfgNewDisksSize=""
s_dlgASMCfgAdditionalSpaceNeeded="0 MB"

除标记内容外,其他配置不需要修改。

1.9 静默安装

oracle 用户执行。安装Oracle RDBMS软件的响应文件,基本配置如下:

cd ~/database
./runInstaller -silent -responseFile /home/oracle/database/response/enterprise.rsp

最后根据提示执行以下两个命令:

sh /u01/app/oracle/oraInventory/orainstRoot.sh
sh /u01/app/oracle/product/10.2.0/db_1/root.sh

1.10 升级

在解压文件后,生成一个Disk1 的路径。这个路径里是升级用的各种文件。这一节的操作基本都围绕这个路径展开。

1.10.1 配置系统兼容列表

修改 Disk1/install/oraparam.ini,找到下面一行,

Linux=redhat-3,SuSE-9,SuSE-10,redhat-4,redhat-5,UnitedLinux-1.0,asianux-1,asianux-2,asianux-3

在该后面添加需要支持的操作系统及版本,最终如下:

Linux=redhat-3,SuSE-9,SuSE-10,redhat-4,redhat-5,UnitedLinux-1.0,asianux-1,asianux-2,asianux-3,redhat-4,redhat-5,redhat-6

1.10.2 配置升级响应文件

Disk1/response/patchset.rsp 是数据库升级所使用的配置文件。内容如下:

RESPONSEFILE_VERSION=2.2.1.0.0
UNIX_GROUP_NAME=oinstall                                   =======> 配置执行升级的用户属组
FROM_LOCATION=
NEXT_SESSION_RESPONSE=
ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1            =======> 配置ORACLE_HOME 变量的值
ORACLE_HOME_NAME="OraDBHome1"                              =======> 配置ORACLE_HOME_NAME 与安装Oracle软件的名称保持一致
TOPLEVEL_COMPONENT={"oracle.patchset.db","10.2.0.4.0"}
SHOW_SPLASH_SCREEN=false
SHOW_WELCOME_PAGE=false
SHOW_COMPONENT_LOCATIONS_PAGE=false
SHOW_CUSTOM_TREE_PAGE=false
SHOW_SUMMARY_PAGE=false
SHOW_INSTALL_PROGRESS_PAGE=true
SHOW_REQUIRED_CONFIG_TOOL_PAGE=false
SHOW_OPTIONAL_CONFIG_TOOL_PAGE=false
SHOW_CONFIG_TOOL_PAGE=false
SHOW_XML_PREREQ_PAGE=false
SHOW_RELEASE_NOTES=false
SHOW_END_OF_INSTALL_MSGS=true
SHOW_ROOTSH_CONFIRMATION=true
SHOW_END_SESSION_PAGE=false
SHOW_EXIT_CONFIRMATION=false
NEXT_SESSION=false
NEXT_SESSION_ON_FAIL=false
SHOW_DEINSTALL_CONFIRMATION=false
SHOW_DEINSTALL_PROGRESS=false
ACCEPT_LICENSE_AGREEMENT=true
RESTART_SYSTEM=
CLUSTER_NODES=
OUI_HOSTNAME=
REMOVE_HOMES=
COMPONENT_LANGUAGES={"en"}
sl_userNodeList=
b_acceptLicense=
b_useRegistration=
s_csiNumber=
s_metaLink=
s_countryName=
b_proxyused=
s_serverName=
s_portNumber=
s_userName=
s_proxyPassword=
b_authenticationused=

只需要修改有提示的三个参数。其他不需要修改。

特别说明的是,如果不记得ORACLE_HOME_NAME,可以在 oraInventory/ContentsXML/inventory.xml中找到,如下:



   10.2.0.1.0
   2.1.0.6.0





HOME NAME="OraDBHome1" 就是ORACLE_HOME_NAME 对应的值。

另外,如果想变更 ORACLE_HOME_NAME 的值,请参考变更ORACLE_HOME_NAME.

1.10.3 安装补丁

./runInstaller -silent -responseFile /Disk1/response/patchset.rsp

注意,响应文件要使用绝对路径。

执行部分结果如下:

正在启动 Oracle Universal Installer...

正在检查安装程序要求...

检查操作系统版本: 必须是redhat-3, SuSE-9, SuSE-10, redhat-4, redhat-5, UnitedLinux-1.0, asianux-1, asianux-2, asianux-3, redhat-4, redhat-5 or redhat-6
                                      通过


所有安装程序要求均已满足。

准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2020-05-09_11-53-53PM. 请稍候...[oracle@boss1 Disk1]$ Oracle Universal Installer, 版本 10.2.0.4.0 正式版
版权所有 (c) 1999, 2008, Oracle。保留所有权利。

本次安装会话的日志可见于:
 /u01/app/oracle/oraInventory/logs/installActions2020-05-09_11-53-53PM.log
.................................................................................................... 100% 已完成。


正在加载产品信息
.......................................................................................................... 100% 已完成。


开始执行先决条件...
Total No of checks: 2

Performing check for checkToInstallCCR
检查 Oracle 主目录中已安装的组件
检查完成。此次检查的总体结果为: 通过


Check complete: 通过
=======================================================================
Performing check for CompatibilityChecks
正在检查 Oracle 主目录的不兼容性...
检查完成。此次检查的总体结果为: 通过


Check complete: 通过
=======================================================================
PrereqChecks complete


分析相关性
............................................................................................................. 100% 已完成。

-----------------------------------------------------------------------------
概要
全局设置
    来源: /home/oracle/Disk1/stage/products.xml
    Oracle 主目录: /u01/app/oracle/product/10.2.0/db_1 (OraDBHome1)
产品语言
   英语
空间要求
   / 要求空间 1.42GB (包括 55MB 临时空间) : 可用空间 39.73GB
新安装组件 (81 个产品)
   Oracle Notification Service Patch 10.2.0.4.0
   Database Configuration and Upgrade Assistants Patch 10.2.0.4.0
........... 省略 ...............
正在进行卸装 (2020年5月9日 星期六 下午11时54分04秒 CST)
...............................................................   0% 已完成。
...............................................................  14% 已完成。
...............................................................  29% 已完成。
...............................................................  44% 已完成。
...............................................................  59% 已完成。
...............................................................  74% 已完成。
..............................................                  100% 已完成。

卸装成功

正在安装 (2020年5月9日 星期六 下午11时54分04秒 CST)
...............................................................  14% 已完成。
...............................................................  29% 已完成。
...............................................................  44% 已完成。
...............................................................  59% 已完成。
...............................................................  74% 已完成。
......................................................           87% 已完成。
安装成功

正在进行链接 (2020年5月9日 星期六 下午11时54分33秒 CST)
...                                                              87% 已完成。
链接成功

正在进行设置 (2020年5月9日 星期六 下午11时57分15秒 CST)
.........                                                       100% 已完成。
设置成功

安装阶段结束。(2020年5月9日 星期六 下午11时57分16秒 CST)
WARNING:
以下配置脚本需要以 "root" 用户的身份执行。
#!/bin/sh
#Root script to run
/u01/app/oracle/product/10.2.0/db_1/root.sh
要执行配置脚本, 请执行以下操作:
    1. 打开终端窗口
    2. 以 "root" 身份登录
    3. 运行脚本

Oracle Database 10g Release 2 Patch Set 3 的 安装 已成功。
请查看 '/u01/app/oracle/oraInventory/logs/silentInstall2020-05-09_11-53-53PM.log' 以获取详细资料。

根据提示,再次执行root.sh,注意,以root用户执行。

sh /u01/app/oracle/product/10.2.0/db_1/root.sh

没有异常的话,至此,已升级完 RDBMS软件。 如果还没有数据库,只是升级软件,至此已完成。如果本身是有数据 库的,还需要执行下面两个步骤。

1.10.4 升级数据字典

sqlplus 环境操作,sysdba身份。

startup upgrade
spool patch.log
@?/rdbms/admin/catupgrd.sql
spool off

1.10.5 重新编译无效对象

sqlplus 环境操作,sysdba身份。

startup force
@?/rdbms/admin/utlrp.sql

1.10.6 升级catalog

如果使用catalog 库作为记录rman备份信息,那么还需要升级catalog。

rman catalog /
RMAN> UPGRADE CATALOG;

1.10.7 回退

SQL> STARTUP DOWNGRADE
SQL> SPOOL downgrade.log
SQL> @catdwgrd.sql
SQL> spool off

注意,如果你的版本里没有catdwgrd.sql,可以依据10.1中的文件全名规则, 降级使用的是d92000.sql,即d.sql 。

Author: halberd.lee

Created: 2020-05-11 Mon 21:54

Validate

你可能感兴趣的:(ORACLE 10.2.0.1 单机升级至10.2.0.4)