PHP code: 昨晚在BI库上安装补丁6430169,很顺利,大概用了1小时多一点,便完成两个数据库(BI,PORTAL) 的升级过程.安装完软件(OPATCH APPLY),需要执行一脚本,脚本在库里运行结束后,找到运行过程中 出现的错误信息,和补丁的安装文档上,提示允许的错误信息比较,发现完全OK.至此,可以确认本次 安装完全成功(后面还有些编译步骤,但属于用户数据的问题,与数据库系统没有关系)。 本次在BI库上安装补丁6430169前,我事先在我的机器上作了几回操作,以熟悉安装流程, 总结这次补丁的安装过程,有几处需要注意: 1 需要熟悉补丁的安装要求,即,该补丁只适合在哪个操作系统,哪个版本的软件上安装。 除了要32,64位的区别外,有些OPATCH对数据库软件版本本身也有要求,如,此补丁,必须 10.2.0.3.0上才能安装。 2 需要注意OPATCH的版本. 如,此补丁,要求OPATCH必须是10.2.0.3.1以上,而数据库软件带 的OPATCH只有10.2.0.3.0,需要到METALINK下载升级。 3 该补丁可能会与哪些原先已经在库上安装的补丁有冲突? 若安装此补丁后,原先补丁将被 卸载掉,是否合适,若不行,得向METALINK提出此问题。 在本次安装中,数据库原先已经安装了补丁6038243(patch7, 补丁6430169是patch11,patch7 的升级版),在安装过程中,将卸载patch7,这是没有影响的;但补丁6430169会与5071931有冲突, 安装了6430169时,将卸载5071931,此时,需要考虑被卸载掉的补丁对数据库的影响。 4 整个安装从哪里开始,哪一步结束,此步极为关键,否则,安装不完整。 本次安装中,是文档中的第3步: Section 3, "Patch Installation Procedures for Oracle Database Release 10.2.0.3" 需要仔细阅读。 5 安装开始时,需要关闭哪些WINDOWS的后台服务。通常是后台的Distributed 开头的服务,以及在 该ORACLE_HOME 下运行的服务等(ORACLE开头的服务全都关闭)。需要提醒:SQLPLUS程序也必须关闭。 昨晚用SQLPLUS关闭数据库后,没有EXIT SQLPLUS, 结果OPATCH APPLY动作失败。退出后, 再 OPATCH APPLY,成功。 6 通常,单个BUG的补丁很简单,只需要OPATCH APPLY即可,此时这些补丁往往很小,几十K到几百K而已。 但稍微大一些的补丁,不仅仅是OPATCH APPLY这个命令就结束,很可能需要跑一些脚本(如本次安装的 补丁6430169,150M),这些脚本在运行过程中,将出现一些错误,在这些错误当中,绝大部分是系统 允许出现的,也可能有些是意外,需要将脚本运行日志中的错误与安装文档的提示逐个比较,以找出 异常情况。 7 当数据库中DBA_REGISTRY 中的某个组件的状态时 UPGRADED 时,升级脚本往往不能完整运行, 此时,需要先将该组件修复至VALID状态,才能继续运行升级脚本。 在本次测试中,CATPROC,AMD 组件的状态就是UPGRADED,结果升级脚本屡次运行失败。在重新 修正这些组件后,脚本才能正常运行。 8 在以往的升级过程中,ORACLE往往要求给参数SHARED_POOL_SIZE,JAVA_POOL_SIZE 设置为 至少150M. 以便脚本的编译运行。在10G中,SGA_TARGET 已经替代了SHARED_POOL_SIZE, JAVA_POOL_SIZE,我们的参数文件里此两参数的值通常是0, 本次测试,发现编译到一JAVA 过程中,出现: BEGIN dbms_java.loadjava('-resolve -schema ORDSYS ord/jlib/jai_core_depl.jar'); END; * ERROR at line 1: ORA-03113: end-of-file on communication channel 虽然不能确定是不是因为没有设置该参数造成的,但在我设置之后(我设置了之后,又重启操作系统) 再运行,脚本却成功。故,建议还是给这两参数设置上此值。 9 在完成OPATCH APPLY操作后(正常完成,其返回代码为0),最好重新启动操作启动,再跑升级脚本。 在测试的几次过程中,一开始都报 ERROR: ORA-03114: not connected to ORACLE 我重启操作系统后,再跑脚本,即OK. 2007-11-07 --
昨晚在BI库上安装补丁6430169,很顺利,大概用了1小时多一点,便完成两个数据库(BI,PORTAL) 的升级过程.安装完软件(OPATCH APPLY),需要执行一脚本,脚本在库里运行结束后,找到运行过程中 出现的错误信息,和补丁的安装文档上,提示允许的错误信息比较,发现完全OK.至此,可以确认本次 安装完全成功(后面还有些编译步骤,但属于用户数据的问题,与数据库系统没有关系)。 本次在BI库上安装补丁6430169前,我事先在我的机器上作了几回操作,以熟悉安装流程, 总结这次补丁的安装过程,有几处需要注意: 1 需要熟悉补丁的安装要求,即,该补丁只适合在哪个操作系统,哪个版本的软件上安装。 除了要32,64位的区别外,有些OPATCH对数据库软件版本本身也有要求,如,此补丁,必须 10.2.0.3.0上才能安装。 2 需要注意OPATCH的版本. 如,此补丁,要求OPATCH必须是10.2.0.3.1以上,而数据库软件带 的OPATCH只有10.2.0.3.0,需要到METALINK下载升级。 3 该补丁可能会与哪些原先已经在库上安装的补丁有冲突? 若安装此补丁后,原先补丁将被 卸载掉,是否合适,若不行,得向METALINK提出此问题。 在本次安装中,数据库原先已经安装了补丁6038243(patch7, 补丁6430169是patch11,patch7 的升级版),在安装过程中,将卸载patch7,这是没有影响的;但补丁6430169会与5071931有冲突, 安装了6430169时,将卸载5071931,此时,需要考虑被卸载掉的补丁对数据库的影响。 4 整个安装从哪里开始,哪一步结束,此步极为关键,否则,安装不完整。 本次安装中,是文档中的第3步: Section 3, "Patch Installation Procedures for Oracle Database Release 10.2.0.3" 需要仔细阅读。 5 安装开始时,需要关闭哪些WINDOWS的后台服务。通常是后台的Distributed 开头的服务,以及在 该ORACLE_HOME 下运行的服务等(ORACLE开头的服务全都关闭)。需要提醒:SQLPLUS程序也必须关闭。 昨晚用SQLPLUS关闭数据库后,没有EXIT SQLPLUS, 结果OPATCH APPLY动作失败。退出后, 再 OPATCH APPLY,成功。 6 通常,单个BUG的补丁很简单,只需要OPATCH APPLY即可,此时这些补丁往往很小,几十K到几百K而已。 但稍微大一些的补丁,不仅仅是OPATCH APPLY这个命令就结束,很可能需要跑一些脚本(如本次安装的 补丁6430169,150M),这些脚本在运行过程中,将出现一些错误,在这些错误当中,绝大部分是系统 允许出现的,也可能有些是意外,需要将脚本运行日志中的错误与安装文档的提示逐个比较,以找出 异常情况。 7 当数据库中DBA_REGISTRY 中的某个组件的状态时 UPGRADED 时,升级脚本往往不能完整运行, 此时,需要先将该组件修复至VALID状态,才能继续运行升级脚本。 在本次测试中,CATPROC,AMD 组件的状态就是UPGRADED,结果升级脚本屡次运行失败。在重新 修正这些组件后,脚本才能正常运行。 8 在以往的升级过程中,ORACLE往往要求给参数SHARED_POOL_SIZE,JAVA_POOL_SIZE 设置为 至少150M. 以便脚本的编译运行。在10G中,SGA_TARGET 已经替代了SHARED_POOL_SIZE, JAVA_POOL_SIZE,我们的参数文件里此两参数的值通常是0, 本次测试,发现编译到一JAVA 过程中,出现: BEGIN dbms_java.loadjava('-resolve -schema ORDSYS ord/jlib/jai_core_depl.jar'); END; * ERROR at line 1: ORA-03113: end-of-file on communication channel 虽然不能确定是不是因为没有设置该参数造成的,但在我设置之后(我设置了之后,又重启操作系统) 再运行,脚本却成功。故,建议还是给这两参数设置上此值。 9 在完成OPATCH APPLY操作后(正常完成,其返回代码为0),最好重新启动操作启动,再跑升级脚本。 在测试的几次过程中,一开始都报 ERROR: ORA-03114: not connected to ORACLE 我重启操作系统后,再跑脚本,即OK. 2007-11-07 --