Oracle 18c bug 导致执行 DBMS_PDB.CHECK_PLUG_COMPATIBILITY报错
Oracle 18c bug 导致执行 DBMS_PDB.CHECK_PLUG_COMPATIBILITY报错
在Oracle 18c 插入PDB时需要进行兼容性检查,在执行DBMS_PDB.CHECK_PLUG_COMPATIBILITY时会报ORA-07445: exception encountered: core dump [__intel_ssse3_rep_memcpy()+6461]的错误,如下:
[dave@www.cndba.cn admin]$ sqlplus / as sysdba SQL*Plus: Release 18.0.0.0.0 - Production on Thu Oct 25 11:52:34 2018 Version 18.3.0.0.0 Copyright (c) 1982, 2018, Oracle. All rights reserved. Connected to: Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production Version 18.3.0.0.0 SQL> select banner from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production SQL> SET SERVEROUTPUT ON DECLARE compatible CONSTANT VARCHAR2(3) := CASE DBMS_PDB.CHECK_PLUG_COMPATIBILITY( pdb_descr_file => '/opt/oracle/oradata/ORCLCDB/dave/dave.xml', pdb_name => 'dave') WHEN TRUE THEN 'YES' ELSE 'NO' END; BEGIN DBMS_OUTPUT.PUT_LINE(compatible); END; / SQL> 2 3 4 5 6 7 8 9 10 11 12 ERROR: ORA-03114: not connected to ORACLE DECLARE * ERROR at line 1: ORA-03113: end-of-file on communication channel Process ID: 2748 Session ID: 1 Serial number: 37812
查看log 日志:
2018-10-25T11:10:15.262580+08:00 Exception [type: SIGSEGV, Invalid permissions for mapped object] [ADDR:0x7F6B69AF5000] [PC:0x6E46EED, __intel_ssse3_rep_memcpy()+6461] [flags: 0x0, count: 1] Errors in file /opt/oracle/diag/rdbms/orclcdb/ORCLCDB/trace/ORCLCDB_ora_2123.trc (incident=19481) (PDBNAME=CDB$ROOT): ORA-07445: exception encountered: core dump [__intel_ssse3_rep_memcpy()+6461] [SIGSEGV] [ADDR:0x7F6B69AF5000] [PC:0x6E46EED] [Invalid permissions for mapped object] [] Incident details in: /opt/oracle/diag/rdbms/orclcdb/ORCLCDB/incident/incdir_19481/ORCLCDB_ora_2123_i19481.trc Use ADRCI or Support Workbench to package the incident. See Note 411.1 at My Oracle Support for error and packaging details. Exception [type: SIGSEGV, SI_KERNEL(general_protection)] [ADDR:0x0] [PC:0x112C4711, pfrtcs()+65] [flags: 0x0, count: 2] Errors in file /opt/oracle/diag/rdbms/orclcdb/ORCLCDB/trace/ORCLCDB_ora_2123.trc (incident=19482) (PDBNAME=CDB$ROOT): ORA-07445: exception encountered: core dump [pfrtcs()+65] [SIGSEGV] [ADDR:0x0] [PC:0x112C4711] [SI_KERNEL(general_protection)] [] ORA-07445: exception encountered: core dump [__intel_ssse3_rep_memcpy()+6461] [SIGSEGV] [ADDR:0x7F6B69AF5000] [PC:0x6E46EED] [Invalid permissions for mapped object] [] Incident details in: /opt/oracle/diag/rdbms/orclcdb/ORCLCDB/incident/incdir_19482/ORCLCDB_ora_2123_i19482.trc Use ADRCI or Support Workbench to package the incident. See Note 411.1 at My Oracle Support for error and packaging details.
根据MOS 文档说明,这里是Oracle 18c 的bug:
DBMS_PDB.CHECK_PLUG_COMPATIBILITY = ORA-3113 / ORA-7445[__intel_ssse3_rep_memcpy()+6429] (文档 ID 2446450.1)
解决方法就是升级到19.1 或者打Patch 28502403 ,我们这里选择打补丁:
[dave@www.cndba.cn tmp]$ unzip p28502403_183000DBRU_Linux-x86-64.zip Archive: p28502403_183000DBRU_Linux-x86-64.zip creating: 28502403/ inflating: 28502403/README.txt creating: 28502403/files/ creating: 28502403/files/lib/ creating: 28502403/files/lib/libserver18.a/ inflating: 28502403/files/lib/libserver18.a/kpdbe.o creating: 28502403/etc/ creating: 28502403/etc/config/ inflating: 28502403/etc/config/actions.xml inflating: 28502403/etc/config/inventory.xml inflating: PatchSearch.xml [dave@www.cndba.cn tmp]$ cd 28502403/ [dave@www.cndba.cn 28502403]$ ls etc files README.txt [dave@www.cndba.cn 28502403]$ $ORACLE_HOME/OPatch/opatch apply Oracle Interim Patch Installer version 12.2.0.1.14 Copyright (c) 2018, Oracle Corporation. All rights reserved. Oracle Home : /opt/oracle/product/18c/dbhome_1 Central Inventory : /opt/oracle/oraInventory from : /opt/oracle/product/18c/dbhome_1/oraInst.loc OPatch version : 12.2.0.1.14 OUI version : 12.2.0.4.0 Log file location : /opt/oracle/product/18c/dbhome_1/cfgtoollogs/opatch/opatch2018-10-25_11-28-32AM_1.log Verifying environment and performing prerequisite checks... Prerequisite check "CheckActiveFilesAndExecutables" failed. The details are: Following executables are active : /opt/oracle/product/18c/dbhome_1/bin/oracle UtilSession failed: Prerequisite check "CheckActiveFilesAndExecutables" failed. Log file location: /opt/oracle/product/18c/dbhome_1/cfgtoollogs/opatch/opatch2018-10-25_11-28-32AM_1.log OPatch failed with error code 73 [dave@www.cndba.cn 28502403]$
补丁报错,查看日志:
[Oct 25, 2018 11:28:38 AM] [INFO] Files in use by a process: /opt/oracle/product/18c/dbhome_1/bin/oracle PID( 2665 2667 2669 2671 2675 2677 2684 2687 2690 2693 2695 2700 2702 2704 2706 2 708 2710 2712 2714 2716 2718 2720 2722 2724 2728 2730 2733 2735 2737 2742 2744 2750 2752 2754 2756 2758 2760 2762 2770 2777 2782 2784 2803 2996 3003 3017 3021 3023 3039 3850 ) [Oct 25, 2018 11:28:38 AM] [INFO] Following executables are active : /opt/oracle/product/18c/dbhome_1/bin/oracle [Oct 25, 2018 11:28:38 AM] [INFO] Prerequisite check "CheckActiveFilesAndExecutables" failed. The details are:
数据库在使用,关闭数据库和监听后,在打正常:
[dave@www.cndba.cn 28502403]$ $ORACLE_HOME/OPatch/opatch apply Oracle Interim Patch Installer version 12.2.0.1.14 Copyright (c) 2018, Oracle Corporation. All rights reserved. Oracle Home : /opt/oracle/product/18c/dbhome_1 Central Inventory : /opt/oracle/oraInventory from : /opt/oracle/product/18c/dbhome_1/oraInst.loc OPatch version : 12.2.0.1.14 OUI version : 12.2.0.4.0 Log file location : /opt/oracle/product/18c/dbhome_1/cfgtoollogs/opatch/opatch2018-10-25_11-34-28AM_1.log Verifying environment and performing prerequisite checks... OPatch continues with these patches: 28502403 Do you want to proceed? [y|n] y User Responded with: Y All checks passed. Please shutdown Oracle instances running out of this ORACLE_HOME on the local system. (Oracle Home = '/opt/oracle/product/18c/dbhome_1') Is the local system ready for patching? [y|n] y User Responded with: Y Backing up files... Applying interim patch '28502403' to OH '/opt/oracle/product/18c/dbhome_1' Patching component oracle.rdbms, 18.0.0.0.0... Patch 28502403 successfully applied. Log file location: /opt/oracle/product/18c/dbhome_1/cfgtoollogs/opatch/opatch2018-10-25_11-34-28AM_1.log OPatch succeeded. [dave@www.cndba.cn 28502403]$
打完补丁后函数也正常执行:
SQL> SET SERVEROUTPUT ON DECLARE compatible CONSTANT VARCHAR2(3) := CASE DBMS_PDB.CHECK_PLUG_COMPATIBILITY( pdb_descr_file => '/opt/oracle/oradata/ORCLCDB/dave/dave.xml', pdb_name => 'dave') WHEN TRUE THEN 'YES' ELSE 'NO' END; BEGIN DBMS_OUTPUT.PUT_LINE(compatible); END; / SQL> 2 3 4 5 6 7 8 9 10 11 12 NO PL/SQL procedure successfully completed.
About Me
........................................................................................................................ ● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除 ● 本文在itpub、博客园、CSDN和个人微 信公众号( xiaomaimiaolhr )上有同步更新 ● 本文itpub地址: http://blog.itpub.net/26736162 ● 本文博客园地址: http://www.cnblogs.com/lhrbest ● 本文CSDN地址: https://blog.csdn.net/lihuarongaini ● 本文pdf版、个人简介及小麦苗云盘地址: http://blog.itpub.net/26736162/viewspace-1624453/ ● 数据库笔试面试题库及解答: http://blog.itpub.net/26736162/viewspace-2134706/ ● DBA宝典今日头条号地址: http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826 ........................................................................................................................ ● QQ群号: 230161599 (满) 、618766405 ● 微 信群:可加我微 信,我拉大家进群,非诚勿扰 ● 联系我请加QQ好友 ( 646634621 ) ,注明添加缘由 ● 于 2019-08-01 06:00 ~ 2019-08-31 24:00 在西安完成 ● 最新修改时间:2019-08-01 06:00 ~ 2019-08-31 24:00 ● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解 ● 版权所有,欢迎分享本文,转载请保留出处 ........................................................................................................................ ● 小麦苗的微店 : https://weidian.com/s/793741433?wfr=c&ifr=shopdetail ● 小麦苗出版的数据库类丛书 : http://blog.itpub.net/26736162/viewspace-2142121/ ● 小麦苗OCP、OCM、高可用网络班 : http://blog.itpub.net/26736162/viewspace-2148098/ ● 小麦苗腾讯课堂主页 : https://lhr.ke.qq.com/ ........................................................................................................................ 使用 微 信客户端 扫描下面的二维码来关注小麦苗的微 信公众号( xiaomaimiaolhr )及QQ群(DBA宝典)、添加小麦苗微 信, 学习最实用的数据库技术。
........................................................................................................................ |
- Oracle dbms_job.submit参数错误导致问题(ora-12011 无法执行1作业)
- DBMS_OUTPUT 过多导致oracle存储过程执行抛异常
- 区块链-多重签名中CHECKMULTISIG执行中的bug
- Oracle 12C -- plug unplugged PDB into CDB
- Oracle,Sql*plus执行语句;DBMS_OUTPUT输出
- Oracle数据库案例整理-执行Oracle脚本失败或异常-SQL命令中字符串参数使用双引号导致更新数据库表信息失败
- 怎样使用oracle 的DBMS_SQLTUNE package 来执行 Sql Tuning Advisor 进行sql 自己主动调优
- 关于oracle dbms_job 定时执行的内容。
- oracle 环境变量没配置好,导致orapwd执行失败
- Oracle数据库案例整理-执行Oracle脚本失败或异常-表空间限额用尽导致插入数据失败
- Oracle 存储过程 延迟执行 DBMS_LOCK.SLEEP(60);
- 使用Oracle的DBMS_SQL包执行动态SQL语句
- 使用Oracle的DBMS_SQL包执行动态SQL语句
- Oracle数据库案例整理-执行Oracle脚本失败或异常-oracle用户没有目录可执行权限导致执行SQL脚本失败
- Oracle技术之执行远端DBMS_LOB包中过程
- 【转自Oracle ACE --杨廷琨】sqlplus注释导致语句重复执行
- Oracle 12C -- Plug in a Non-CDB as a PDB
- Oracle 存储过程 延迟执行 DBMS_LOCK.SLEEP(60);
- 使用Oracle的DBMS_SQL包执行动态SQL语句
- 怎样使用oracle 的DBMS_SQLTUNE package 来执行 Sql Tuning Advisor 进行sql 自己主动调优