Oracle 12C数据库PSU补丁安装方式的变化(3)

将补丁注册到数据字典中:
cd $ORACLE_HOME/rdbms/admin
 sqlplus /nolog
 SQL> CONNECT / AS SYSDBA
 SQL> STARTUP
 SQL> @catbundle.sql psu apply
执行成功后,查看:
SQL> select * from dba_registry_history;
 no rows selected
没有记录,查阅资料显示12C改为查看:

SQL> select patch_id,action,status from dba_registry_sqlpatch;
 no rows selected

同样没有记录,后面从网上查到12C的补丁注册改成了用datapatch工具。
 改为datapatch执行操作:

csssit@msuu335:cd $ORACLE_HOME/OPatch
 csssit@msuu335:~/12.1.0/OPatch$ ./datapatch -verbose
 SQL Patching tool version 12.1.0.2.0 on Tue Sep 13 08:51:19 2016
 Copyright (c) 2016, Oracle. All rights reserved.

Log file for this invocation: /csssitapp/oracsssit/cfgtoollogs/sqlpatch/sqlpatch_21004_2016_09_13_08_51_19/sqlpatch_invocation.log

Connecting to database...OK
 Bootstrapping registry and package to current versions...done
 Determining current state...done

Current state of SQL patches:
 Bundle series PSU:
 ID 160719 in the binary registry and not installed in the SQL registry

Adding patches to installation queue and performing prereq checks...
 Installation queue:
 Nothing to roll back
 The following patches will be applied:
 23054246 (Database Patch Set Update : 12.1.0.2.160719 (23054246))

Installing patches...
 Patch installation complete. Total patches installed: 1

Validating logfiles...
 Patch 23054246 apply: SUCCESS
 logfile: /csssitapp/oracsssit/cfgtoollogs/sqlpatch/23054246/20274131/23054246_apply_CSSSIT_2016Sep13_08_52_27.log (no errors)
 SQL Patching tool complete on Tue Sep 13 08:52:57 2016


 SQL> select patch_id,action,status from dba_registry_sqlpatch;

PATCH_ID ACTION STATUS
 ---------- --------------- ---------------
 23054246 APPLY SUCCESS

SQL> select * from dba_registry_history;

no rows selected

现在通过dba_registry_sqlpatch已查看到了注册的补丁,而通过dba_registry_history依然没有记录。

二.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)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2ac238dae5cd0f86faac4add49843368.html