如何检查Oracle中是否安装了所有服务和补丁?
我有一个Oracle 10.2.0.2.0
db版本,想要安装补丁。此外,我想获得包含所有服务和补丁的列表。
答案 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;