Oracle 11g打补丁(PSU)的思路及困惑
微信公众号:云库管 www.yunDBA.com
北京云库管科技有限公司 (内部培训资料)
返回上级
一、注意事项:
1. 补丁集更新(PSU)是累计的
理解:高版本的PSU包含了低版本的PSU;
当检测报出需要做更新,并提示某历史年代的补丁更新(PSU),那只需要打最新版本的PSU就够了,无需把历史年代的逐个打一遍。
2. 从11g开始,补丁集更新(PSU),分成了2个
DB
PSU(先执行);
OJVM
PSU(后执行,因为OJVM PSU需要依赖于DB PSU)。
二、准备工作:
1. 停(实例、软件、进程)
理解:正在运行的程序,是无法改变和更新的。
否则:会报 ”无法锁定主产品清单, OPatch failed 73”
三、步骤:
虽然Oracle安装后,主目录下也带OPatch工具, 但通常版本较低,需要更新成较新的版本才能打补丁。具体不能低于哪个OPatch版本,在补丁集更新的压缩包中,有readme文件说明。
注意:32位和64位程序要匹配,不要搞混了。
2. 更新DB PSU数据库软件程序 (即:opatch apply)
本质:是用opatch这个工具, 把当前目录下的补丁集程序更新到当前的ORACLE_HOME当中。
3. 更新的数据词典(即:执行SQL代码部分)
本质:把ORALCE_HOME下已生成的SQL脚本,执行写入到ORACLE的系统数据词典表中(包括更新基表,过程,后台程序等)
5
更新OJVM PSU数据库软件程序 (即:opatch apply)
方法和DB PSU相同。
6. 更新OJVM PSU数据库的数据词典(即:执行SQL代码部分)
方法和DB PSU相同,注意执行SQL时,数据库实例的状态(OPEN 还是
UPGRADE)。
四、补丁已打,但检测软件(绿盟等)还是报漏洞存在
1.
检测软件检测方法不准确:
打补丁集更新是更新数据库版本的第五位(如 11.2.0.4.19),而有些检测检测软件通常是检测前四位,导致补丁没有被检测软件识别。
解决办法:让检测软件商提供高版本的检测软件或更新。
2.
检测软件没有中心做最新补丁编号同步更新:
解决办法:让检测软件商从中心同步最新新的数据信息。
例如绿盟检测的注意2点要求:
1. 通过数据库登录检测(口令登录)进入
如果通过os扫描:是原理性补丁检测,根据大版本号识别版本漏洞,这种检测结果是打补丁前后,结果相同。
只有数据库登录进入扫描才是真实的,可以检测到新打的补丁。
2. 绿盟插件更新到最新版本。
目的;使软件和总部系统更新同步补丁链关系,从而能识别到新的补丁代码。