OPatchAuto 自动调用 datapatch 完成安装数据库的二进制补丁并自动开始 post patch 的操作。
企业管理云控制(Enterprise Manager Cloud Control)
从 12.1 版本开始,EMCC 现在调用 datapatch 来完成任何 12c 或者更高版本的数据库补丁及 post patch 的操作
升级脚本使用Catctl.pl来替代原来的catupgrd.sql,DBUA 现在在升级过程中也调用 Datapatch
Datapatch 与 OPatch 的最大区别是 OPatch 在数据库关闭时执行,而 datapatch 是在数据库是打开时完成其动作的。
数据库 12c Datapatch 是 Oracle 数据库 12c 中的另一个新工具,它可以自动为数据库补丁执行 post-patch SQL 操作。
Datapatch
通过匹配一个内部存储库与 patch inventory 来决定所需的应用/回滚操作。 Datapatch 驻留在的 opatch 目录,即
$ORACLE_HOME/OPatch 文件夹(在 Windows 平台上: %ORACLE_HOME%OPatch)。
数据库 12c Datapatch 支持 Oracle 多租户,并且简化并加快了多个数据库打补丁的过程。
哪些补丁工具使用了 Datapatch?
Opatchauto
OPatchAuto 自动调用 datapatch 完成安装数据库的二进制补丁并重启后 post patch 的操作。
企业管理云控制(Enterprise Manager Cloud Control)
从 12.1 版本开始,EMCC 现在调用 datapatch 来完成任何 12c 或者更高版本的数据库重启之后的 post patch 的操作
升级
Catctl.pl 和 DBUA 现在在升级过程中调用 Datapatch
OPatch
Datapatch 与 OPatch 的整合是不可能的。因为 OPatch 在数据库关闭时执行,而 datapatch 要求数据库是打开以完成其活动。
SQL 补丁注册表(SQL Patch Registry table)
该表包含了哪些 SQL 补丁已经被应用和/或回滚在给定的数据库的信息。每个数据库都有一个 SQL 补丁注册表,因此,如果在同一个 Oracle 主目录中运行多个数据库,每个数据库都有自己的 SQL 补丁注册表。
要在注册表中检查 datapatch 条目,从 SQL 提示符下键入以下命令:
select * from dba_registry_sqlpatch;
数据库 12.1.0.2 功能增强
下列的功能增强是在数据库 12c 补丁集 12.1.0.2 引入:
dba_registry_history 不再用作为补丁信息
datapatch -rollbackall 选项可用来回滚当前已安装的所有 SQL 补丁
Catbundle 被整合到 datapatch
Datapatch 支持的补丁类型:
"Napply" Patch
Composite Patches
One-off Patches