如何检查Oracle补丁是否已安装?

时间:2014-04-04 11:25:21

标签: oracle patch

如何检查Oracle中是否安装了所有服务和补丁?

我有一个Oracle 10.2.0.2.0 db版本,想要安装补丁。此外,我想获得包含所有服务和补丁的列表。

3 个答案:

答案 0 :(得分:13)

Here is an article on how to check and or install new patches :


要找到OPatch工具设置您的数据库环境变量,然后发出此命令:

cd $ORACLE_HOME/OPatch 
> pwd
/oracle/app/product/10.2.0/db_1/OPatch

要列出适用于您的数据库的所有修补程序,请使用lsinventory选项:

[oracle@DCG023 8828328]$ opatch lsinventory
Oracle Interim Patch Installer version 11.2.0.3.4
Copyright (c) 2012, Oracle Corporation. All rights reserved.

Oracle Home : /u00/product/11.2.0/dbhome_1
Central Inventory : /u00/oraInventory
from : /u00/product/11.2.0/dbhome_1/oraInst.loc
OPatch version : 11.2.0.3.4
OUI version : 11.2.0.1.0
Log file location : /u00/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2013-11-13_13-55-22PM_1.log
Lsinventory Output file location : /u00/product/11.2.0/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory2013-11-13_13-55-22PM.txt


Installed Top-level Products (1):
Oracle Database 11g 11.2.0.1.0
There are 1 products installed in this Oracle Home.

Interim patches (1) :
Patch 8405205 : applied on Mon Aug 19 15:18:04 BRT 2013
Unique Patch ID: 11805160
Created on 23 Sep 2009, 02:41:32 hrs PST8PDT
Bugs fixed:
8405205

OPatch succeeded.

使用sql列出补丁:

select * from registry$history;

答案 1 :(得分:6)

我理解原帖是针对Oracle 10的,但这是供通过Google找到它的任何其他人参考。

在Oracle 12c下,我发现我的注册表$历史记录是空的。 这适用于:

select * from registry$sqlpatch;

答案 2 :(得分:0)

也许你需要“sys”。之前:

select * from sys.registry$history;