windows2008 server 安装Oracle 11g 补丁

以Orcale11.2.0.1数据库版本为例:

1.oracle官网下载对应的补丁文件(需要oracle支持账号才能下载)
windows2008 server 安装Oracle 11g 补丁
此处的账号直接在官网注册即可(登录注册链接):https://login.oracle.com/mysso/signon.jsp
重点:orcale客户服务号-此号码为orcale与公司合作的一个标识,需要在此处输入客户服务号才能通过进入下一步。

2.设置ORACLE_HOME
环境变量中设置变量名:ORACLE_HOME
变量值:D:\app\Administrator\product\11.2.0\dbhome_1(数据库安装目录位置到dbhome_1)
windows2008 server 安装Oracle 11g 补丁
3.使用opatch打补丁,首先查看其版本 opatch version
windows2008 server 安装Oracle 11g 补丁
可能出现的问题:
无法识别opatch命令,那么进去opatch目录,其存在oracle安装目录D:\app\Administrator\product\11.2.0\dbhome_1\OPatch下,在此处输入cmd打开命令界面,然后再输入opatch version查看版本
windows2008 server 安装Oracle 11g 补丁
-------------------以下部分本人因未拥有oracle支持账号未实践,仅为网络资料参考--------------
4.查看补丁文件里面的ReadMe.html, 直接查看第三部分,可以看到oracle版本对应的opatch的最低版本
windows2008 server 安装Oracle 11g 补丁
windows2008 server 安装Oracle 11g 补丁
按照合适的操作系统,选择patch,在新出的页面上,可以在页面的右侧,直接download,就是合适的补丁了。
5.下面就是安装步骤了,其实这里的步骤,就是readme文件上写的。
5.1 备份ORACLE_HOME,其实我发现我都没有设置这个变量,这里设不设没有关系,这里为了表示方便就写做%ORACLE_HOME%(到dbhome_1)——此步骤已执行过,此处需确认变量是否正确
5.2根据提示更新Opatch
5.2.1将Opatch设置如Path变量, %ORACLE_HOME%\Opatch
5.2.2执行 opatch version 命令,看看是否符合上面那个readme要求。
5.2.3如果不符合要求,去下载一个符合要求的。readme上有连接。
5.2.4其实下载了,解压、覆盖Opatch文件夹就好了,为了安全起见,还是备份一下。
5.3 使用Opatch安装补丁
5.3.1 关闭service里面关闭所有的Oracle程序。还有一个Distributed Transaction Coordinator(这个不是Oracle的也得关闭)
5.3.2在命令窗口,CD到补丁的根目录下,执行 Opath apply
5.3.3 这里我碰到一个问题就是oci.dll is active,主要解决方式是下面的几种
5.3.3.1 检查3.3.1的步骤是否关闭。
5.3.3.2 Windows Management Instrumentation 的进程,这个不能关闭,暂停吧。
5.3.3.3如果还不管用的话,出绝招了,将active的dll,进行重命名。(我就是这个方法,升级完成后,会生成新的,而且反正有备份)
5.3.4 执行Opatch apply吧。再吧关掉的进程都重启一下,最好是重启一下电脑,就搞定了。
6.补丁打完之后查看打补丁信息
在cmd中,切换到 oracle_home 目录下的 Opatch文件夹下,执行:
opatch lsinventory
windows2008 server 安装Oracle 11g 补丁
相关资料链接:(在文档中有不明白的地方可以做参考)
百度经验:https://jingyan.baidu.com/article/d8072ac4093fbcac94cefd1b.html
CSDN: https://blog.csdn.net/u012215650/article/details/51208693
https://blog.csdn.net/xiaodii/article/details/84475132
https://blog.csdn.net/demonson/article/details/80433991