oracle11.2.0.4单实例打补丁的示例分析

这篇文章主要介绍oracle 11.2.0.4单实例打补丁的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

专注于为中小企业提供成都网站设计、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业五常免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

0、如何获取oracle 11g安装包:
    1)登陆SR(https://support.oracle.com),搜索13390677,按照平台选择对应的安装包,比如rhel 64位选择Linux x86-64
    2)下载对应包:
        p13390677_112040_Linux-x86-64_1of7.zip:oracle 服务器软件安装包
        p13390677_112040_Linux-x86-64_2of7.zip:oracle 服务器软件安装包
        p13390677_112040_Linux-x86-64_3of7.zip:grid 软件安装包
        p13390677_112040_Linux-x86-64_4of7.zip:oracle 客户端软件安装包
1、如何获取oracle  11g补丁:
    1)登陆SR,搜索1454618.1
    2)选项解释:
        Oracle Database Base Releases:用于下载一些测试版本的oracle软件,比如11.2.0.1,建议不适用这类版本,因为漏洞较多。
        Oracle Database Patchsets:数据库软件安装包(可以搜索到0步中的文件)
        Oracle Database Release Updates(Versions 12.2 & higher):???????
        Oracle Database Release Update Revisions(Versions 12.2 & higher):???????
        Oracle Database PSU,SPU(CPU),Bundle Patches(Versions 12.1 & lower):常用的补丁包
        OJVM RU/PSU/Bundle Patches:包含OJVM的补丁包
        Lastest Available Microsoft Windows Patches:windows相关的
2、如何获取opatch:
    1)登陆SR,搜索文档(274526.1)或者直接搜索opatch
    2)选择对应版本下载。
3、区别:
    1)SPU(CPU):指的是CPU(Critical Patch Update)补丁。每季度发布一次(应该是隔段时间发布),用来修复安全方面的一些补丁,是累积型的。在2012年已更名为Security Patch Update(SPU)。主要指那些本来不属于软件错误,正常使用不会出错的问题。但是别有用心的人可以特别手段绕过数据库安全机制获取非法权限。说白了就是一种安全补丁,为了防止黑客利用,攻击数据库。
    2)PSU:指的是Patch Set Update,就是补丁集。Oracle选取在每个季度用户下载数量最多,并且得到验证具有较低风险的补丁放入每个季度的PSU中,修复一些比较严重的问题,也是累积型的。
    值得注意的是,每个季度的PSU包含相应季度的SPU补丁。
    3)BP:指的是Bundle Patch,也是补丁集,修复多个Bug,只不过是用于Windows平台上的,也是累积型的。Oracle会周期性发布BP(至少每季度一次),而且每个BP会包含之前所有的BP,也就是说,只需要安装最新的BP即可。另外,Oracle 的集群软件和数据库软件的BP是同一个,也就是既可以打在集群上,也可以打在数据库软件上。
    4)GI PSU:用于安装在集群软件的补丁集。针对Oracle Rac。
    5)OJVM PSU:用于修复JAVA 虚拟机相关漏洞的补丁集。针对Rac,建议grid层面打一次,oracle层面也打一次。
    
    综上所示:
    对于windows系统,只需要下载最新版本BP,在集群层面(若有)和数据库层面各打一次布丁即可。
    对于非windows系统,集群层面(若有)需要打最新版本OJVM + GI PSU ,数据库层面需要打最新版本OJVM +DB PSU。
4、修复过程:
    1)将opatch文件、单实例PSU上传到服务器的/tmp目录
    2)查看当前补丁集:
        [oracle@testlihb OPatch]$ cd $ORACLE_HOME/OPatch
        [oracle@testlihb OPatch]$ ./opatch lsinv
            Oracle Interim Patch Installer version 11.2.0.3.4
            Copyright (c) 2012, Oracle Corporation.  All rights reserved.
            Oracle Home       : /database/jkzx/product/11.2.0/db_1
            Central Inventory : /database/jkzx/oraInventory
            from           : /database/jkzx/product/11.2.0/db_1/oraInst.loc
            OPatch version    : 11.2.0.3.4
            OUI version       : 11.2.0.4.0
            Log file location : /database/jkzx/product/11.2.0/db_1/cfgtoollogs/opatch/opatch3018-04-02_15-22-15PM_1.log
            Lsinventory Output file location : /database/jkzx/product/11.2.0/db_1/cfgtoollogs/opatch/lsinv/lsinventory2018-04-02_15-22-15PM.txt
            --------------------------------------------------------------------------------
            Installed Top-level Products (1): 
            Oracle Database 11g                                                  11.2.0.4.0
            There are 1 products installed in this Oracle Home.
            There are no Interim patches installed in this Oracle Home.
            --------------------------------------------------------------------------------
            OPatch succeeded.
    3)更换OPatch文件
        [oracle@testlihb OPatch]$ cd $ORACLE_HOME
        [oracle@testlihb db_1]$ mv /tmp/p6880880_112000_Linux-x86-64.zip .
        [oracle@testlihb db_1]$ mv OPatch OPatch_bak
        [oracle@testlihb db_1]$ unzip p6880880_112000_Linux-x86-64.zip 
    4)解压PSU文件
        [oracle@testlihb db_1]$ cd /tmp/
        [oracle@testlihb tmp]$ unzip p27011017_112040_Linux-x86-64.zip 
    5)安装PSU补丁集(必须先安装PSU补丁集再安装OJVM补丁集)
        [oracle@testlihb tmp]$ cd 27011017/
        [oracle@testlihb 27011017]$ ls
        26925532  26925576  README.html  README.txt
        ##关库
        [oracle@testlihb 27011017]$ sqlplus / as sysdba
        SQL> shutdown immediate
        SQL> exit
        [oracle@testlihb 27011017]$ ps -ef|grep smon_
        oracle   30411 30118  0 15:40 pts/0    00:00:00 grep smon_
        ##关监听
        [oracle@testlihb 27011017]$ ps -ef|grep lsn
        oracle   24373     1  0 11:44 ?        00:00:00 /database/jkzx/product/11.2.0/db_1/bin/tnslsnr LISTENER -inherit
        oracle   30413 30118  0 15:40 pts/0    00:00:00 grep lsn
        [oracle@testlihb 27011017]$ lsnrctl stop
        [oracle@testlihb 27011017]$ ps -ef|grep lsn
        oracle   30415 30118  0 15:41 pts/0    00:00:00 grep lsn
        ##安装前环境配置和检查
        [oracle@testlihb 27011017]$ cd 26925576
        [oracle@testlihb 26925576]$ export PATH=$PATH:$ORACLE_HOME/OPatch:/usr/ccs/bin
        [oracle@testlihb 26925576]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./
            Prereq "checkConflictAgainstOHWithDetail" passed.
            OPatch succeeded.
        [oracle@testlihb 26925576]$ opatch apply
            Do you want to proceed? [y|n]
            y
            Email address/User Name: 
            Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  y
            Is the local system ready for patching? [y|n]
            y
            Applying sub-patch '17478514' to OH '/database/jkxt/product/11.2.0/db_1'
            Patching component oracle.rdbms, 11.2.0.4.0...
            。。。
            Applying sub-patch '26392168' to OH '/database/jkxt/product/11.2.0/db_1'
            ApplySession: Optional component(s) [ oracle.oid.client, 11.2.0.4.0 ]  not present in the Oracle Home or a higher version is found.
            OPatch found the word "error" in the stderr of the make command.
            Please look at this stderr. You can re-run this make command.
            Stderr output:
            chmod: changing permissions of `/database/jkxt/product/11.2.0/db_1/bin/extjobO': Operation not permitted
            make: [iextjob] Error 1 (ignored)
            Composite patch 26925576 successfully applied.
            OPatch Session completed with warnings.
            Log file location: /database/jkxt/product/11.2.0/db_1/cfgtoollogs/opatch/opatch3018-04-02_16-51-12PM_1.log
            OPatch completed with warnings.
    6)安装PSU补丁集后的补充工作
            [oracle@testlihb 26925576]$ cd $ORACLE_HOME/rdbms/admin
            [oracle@testlihb admin]$ sqlplus / as sysdba
            SQL> startup
            SQL> @catbundle.sql psu apply
            SQL> shutdown immediate
            SQL> exit
    7)安装OJVM补丁集预检查
            [oracle@testlihb admin]$ cd /tmp/27011017/26925532
            [oracle@testlihb 27011017]$ cd 26925532
            [oracle@testlihb 26925532]$ export PATH=$PATH:/database/jkzx/product/11.2.0/db_1/OPatch
            [oracle@testlihb 26925532]$ opatch prereq CheckConflictAgainstOHWithDetail -ph ./
                。。。
                Prereq "checkConflictAgainstOHWithDetail" passed.
                OPatch succeeded.
    8)安装OJVM补丁集
            [oracle@testlihb 26925532]$ opatch apply
                。。。
                OPatch continues with these patches:   26925532  
                Do you want to proceed? [y|n]
                y
                Email address/User Name: 
                Do you wish to remain uninformed of security issues ([Y]es, [N]o) [N]:  y
                Is the local system ready for patching? [y|n]
                y
                User Responded with: Y
                Backing up files...
                Applying interim patch '26925532' to OH '/database/jkxt/product/11.2.0/db_1'
                ApplySession: Optional component(s) [ oracle.sqlj, 11.2.0.4.0 ] , [ oracle.sqlj.companion, 11.2.0.4.0 ]  not present in the Oracle Home or a higher version is found.
                Patching component oracle.javavm.server, 11.2.0.4.0...
                。。。
                Patch 26925532 successfully applied.
                Log file location: /database/jkxt/product/11.2.0/db_1/cfgtoollogs/opatch/opatch3018-04-02_17-10-13PM_1.log
                OPatch succeeded.
    9)安装OJVM补丁集的后续工作
            [oracle@testlihb 26925532]$ cd $ORACLE_HOME/sqlpatch/26925532
            [oracle@testlihb 26925532]$ sqlplus / as sysdba
            SQL> startup upgrade
            SQL> @postinstall.sql
            SQL> shutdown immediate
            SQL> startup 
            SQL> @?/rdbms/admin/utlrp.sql
            SQL> exit
            [oracle@testlihb 26925532]$ lsnrctl start
            [oracle@testlihb 26925532]$ lsnrctl status
    10)检查当前补丁集情况:
            [oracle@testlihb 26925532]$ opatch lsinv
                。。。
                Installed Top-level Products (1): 
                Oracle Database 11g                                                  11.2.0.4.0
                There are 1 products installed in this Oracle Home.
                Interim patches (2) :
                Patch  26925532     : applied on Mon Apr 02 17:11:56 CST 2018
                Unique Patch ID:  21750570
                Patch description:  "OJVM PATCH SET UPDATE 11.2.0.4.180116"
                Created on 27 Nov 2017, 11:12:35 hrs PST8PDT
                Bugs fixed:
                    18933818, 19176885, 17201047, 25067795, 14774730, 19153980, 21911849
                    。。。
                Patch  26925576     : applied on Mon Apr 02 16:56:21 CST 2018
                Unique Patch ID:  21773885
                Patch description:  "Database Patch Set Update : 11.2.0.4.180116 (26925576)"
                Created on 5 Dec 2017, 05:23:24 hrs PST8PDT
                Sub-patch  26392168; "Database Patch Set Update : 11.2.0.4.171017 (26392168)"
                。。。
                Sub-patch  17478514; "Database Patch Set Update : 11.2.0.4.1 (17478514)"
                Bugs fixed:
                    21174504, 17184721, 21538558, 16091637, 18092127, 17381384, 15979965
                    。。。
                --------------------------------------------------------------------------------
                OPatch succeeded.

以上是“oracle 11.2.0.4单实例打补丁的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


分享标题:oracle11.2.0.4单实例打补丁的示例分析
文章URL:http://ybzwz.com/article/jdjiid.html