教你快速掌握如何使用"Opatch"打补丁
2008-04-05 14:36
831 查看
教你快速掌握如何使用"Opatch"打补丁 |
http://dev.21tx.com 2008年03月10日 赛迪网 李承良 |
1、下载
Opatch的最新版本可以从Metalink下载,参考 Note:224346.1
(Opatch - Where Can I Find the Latest Version of Opatch?)
2、准备工作
# You must have Perl 5.00503 (or later)
# installed under the ORACLE_HOME, or elsewhere within the host
# environment. OPatch is no longer included in patches as of 9.2.0.2.
# Refer to the following link for details on Perl and OPatch:
# http://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=189489.1
下载Optach后,上传到$ORACLE_HOME
[/app/oracle/product/9205/OPatch]$chmod 755 *
[/app/oracle/product/9205/OPatch]$ opatch version
Invoking OPatch 10.2.0.1.6
OPatch Version: 10.2.0.1.6
OPatch succeeded.
[/app/oracle/product/9205/OPatch]$ opatch lsinventory
Invoking OPatch 10.2.0.1.6
Oracle Interim Patch Installer version 10.2.0.1.6
Copyright (c) 2007, Oracle Corporation. All rights reserved.
Oracle Home : /app/oracle/product/9205
Central Inventory : /app/oracle/oraInventory
from : /var/opt/oracle/oraInst.loc
OPatch version : 10.2.0.1.6
OUI version : 10.1.0.5.0
OUI location : /app/oracle/product/9205/oui
Log file location : /app/oracle/product/9205/cfgtoollogs/opatch/opatch2008-02-20_15-27-23PM.log
LsInventorySession failed:
The Oracle Home does not meet OUI version requirement.
This OPatch (version 10.2.0.1.6) detects OUI version 10.1.0.5.0 in the home.
It requires OUI version 10.2 or above.
OPatch failed with error code 73
原因:Opatch的版本过高。
下载新的Opatch,重新执行opatch lsinventory
[/app/oracle/product/9205/OPatch]$ opatch lsinventory
Oracle Interim Patch Installer version 1.0.0.0.57
Copyright (c) 2007 Oracle Corporation. All Rights Reserved..
We recommend you refer to the OPatch documentation under
OPatch/docs for usage reference. We also recommend using
the latest OPatch version. For the latest OPatch version
and other support related issues, please refer to document
293369.1 which is viewable from metalink.oracle.com
Oracle Home : /app/oracle/product/9205
Oracle Home Inventory : /app/oracle/product/9205/inventory
Central Inventory : /app/oracle/oraInventory
from : /var/opt/oracle/oraInst.loc
OUI location : /app/oracle/product/9205/oui
OUI shared library : /app/oracle/product/9205/oui/lib/hpUnix/liboraInstaller.sl
Java location : /app/oracle/product/9205/jre/1.4.2/bin/java
Log file location : /app/oracle/product/9205/.patch_storage//*.log
Creating log file "/app/oracle/product/9205/.patch_storage/LsInventory__02-20-2008_15-42-43.log"
Result:
There is no Interim Patch
OPatch succeeded.
3、具体范例及遇到的问题
下面以打补丁5523799为例
[/app/oracle/product/9205/patches/5523799]$opatch apply
报错:
Invoking fuser to check for active processes.
Invoking fuser on "/app/oracle/product/9205/bin/oracle"
Problems when checking for files that are active.
There were problems when checking for active processes on critical files.
The patch tool runs the command "fuser" to check that critical files are not in use. Make sure 'fuser' is available and executable on your PATH
ERROR: OPatch failed during pre-reqs check.
原因为fuser没有执行权限,su - root
/usr/sbin#chmod +x fuser
重新命令,打Patch成功
用opatch lsinventory显示打patch结果
[/app/oracle/product/9205/OPatch]$ opatch lsinventory
Oracle Interim Patch Installer version 1.0.0.0.57
Copyright (c) 2007 Oracle Corporation. All Rights Reserved..
We recommend you refer to the OPatch documentation under
OPatch/docs for usage reference. We also recommend using
the latest OPatch version. For the latest OPatch version
and other support related issues, please refer to document
293369.1 which is viewable from metalink.oracle.com
Oracle Home : /app/oracle/product/9205
Oracle Home Inventory : /app/oracle/product/9205/inventory
Central Inventory : /app/oracle/oraInventory
from : /var/opt/oracle/oraInst.loc
OUI location : /app/oracle/product/9205/oui
OUI shared library : /app/oracle/product/9205/oui/lib/hpunix/liboraInstaller.sl
Java location : /app/oracle/product/9205/jre/1.4.2/bin/java
Log file location : /app/oracle/product/9205/.patch_storage//*.log
Creating log file "/app/oracle/product/9205/.patch_storage/LsInventory__02-20-2008_16-11-49.log"
Result:
Installed Patch List:
=====================
1) Patch 5523799 applied on Wed Feb 20 16:11:14 GMT+08:00 2008
[ Base Bug(s): 5523799 ]
OPatch succeeded.
4、最后通过opatch查看数据库各组件版本
[/app/oracle/product/9205/OPatch]$ opatch lsinventory –details
相关文章推荐
- 如何使用<identity impersonate="true"/>
- sql 2005如何使用被禁止的"xp_cmdshell"
- Linux网络编程(1):如何使用"unp.h"
- 如何快速创建一个AJAX的"加载"的图片效果
- 如何解决asp.net中使用webbrowser是出现的"无法实例化ActiveX 控件"的异常"
- sql 2005如何使用被禁止的"xp_cmdshell"
- Sencha Touch 2.0官方指南:如何使用"类"
- [9] CMake - 如何高效使用"cmake --help" ?
- 教你快速掌握如何使用“Opatch”打补丁
- 如何使用"MySQL-Proxy"实现读写分离
- Java使用"指针"快速比较字节
- 在公式语言中如何使用"/"?
- 如何使用<identity impersonate="true"/>
- Sencha Touch 2.0官方指南:如何使用"类"
- openjweb快速开发平台是java web应用开发领域的"银弹"
- java "回调【 Callback 】" 的理解和使用<借鉴>
- android devlop:adb如何使用 &&& 消除工程导入时的“Invalid project description”错误
- SpringMvc如何学习框架技术? 就像如上的图示一样,先掌握新技术的体系流程图。在快速弄明白程序执行流程后,在使用过程中 了解细节。
- 使用"Visual Studio命令提示"查看cad中的重整函数
- 如何根据"需求及功能需要"去选择相关的"材料、型号、技术"的思考