前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >问题已解决:ORA-7445[qkaMarkQkn()+] Running a Large Query

问题已解决:ORA-7445[qkaMarkQkn()+] Running a Large Query

作者头像
Lucifer三思而后行
发布2021-08-17 16:00:46
8230
发布2021-08-17 16:00:46
举报
文章被收录于专栏:公众号:Lucifer三思而后行

作者简介

  • 作者:LuciferLiu,中国DBA联盟(ACDU)成员。
  • 目前从事Oracle DBA工作,曾从事 Oracle 数据库开发工作,主要服务于生产制造,汽车金融等行业。
  • 现拥有Oracle OCP,OceanBase OBCA认证,擅长Oracle数据库运维开发,备份恢复,安装迁移,Linux自动化运维脚本编写等。

前言

今天巡检遇到数据库报错 ORA-07445 [qkaMarkQkn] 错误,数据库版本为 11204 (x86_64),错误日志如下:

ORA-07445: 出现异常错误: 核心转储 [qkaMarkQkn()+1478] [SIGSEGV] [ADDR:0x10] [PC:0x1A20E62] [Address not mapped to object] []

关键词:ORA-07445、[qkaMarkQkn()+1478]…

一、问题分析

1、通过 Oracle oerr 工具查看错误代码:

提示为内部错误,建议提交SR进行分析。

2、抓取trace文件关键信息:

Error: ORA-07445 [qkaMarkQkn()+1478] [SIGSEGV] [ADDR:0x10] [PC:0x1A20E62] [Address not mapped to object] Error Stack: ORA-7445[qkaMarkQkn] Main Stack: qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkaMarkQkn <- qkadrv2Pre <- qkadrv2 <- opitca <- kksFullTypeCheck <- rpiswu2 <- kksLoadChild <- kxsGetRuntimeLock <- kksfbc <- opiexe <- kpoal8 <- opiodr <- kpoodrc <- rpiswu2 <- kpoodr <- upirtrc <- kpurcsc <- kpuexec <- OCIStmtExecute <- qksanExecSql <- qksanAnalyzeSql <- qksanAnalyzeSegSql <- kestsaAutoTunePqDrv <- kestsTuneSqlDrv <- kesaiExecAction SQL脱敏: Current SQL: /* SQL Analyze(2399,1) */ 一个select查询语句

通过trace文件可以看出在执行一个查询语句时导致报错ORA-7445。

3、通过查询MOS文档,发现该错误相符合的文档:

ORA-7445[qkaMarkQkn()+1584] Running a Large Query (Doc ID 2094809.1)

4、提交SR的回复:

/* SQL Analyze(2399,1) */ 一个select查询语句 This error typically only impacts the SQL Tuning job itself. If the error is a one off incident then you can ignore it. If such errors keep occurring in Jnnn processes when executing package DBMS_SQLTUNE_INTERNAL then a workaround is to disable the Automatic SQL Tuning Tasks as follows:

代码语言:javascript
复制
BEGIN
DBMS_AUTO_TASK_ADMIN.DISABLE(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL );
END;
/

This will disable all automatic SQL tuning tasks but you can still perform “on-demand” SQL tuning to get advice on tuning specific SQL statements.

建议关闭SQL tuning来避免,但是感觉不是根本解决方案。读者可根据具体情况自行判断。

二、解决方案

两种解决方案,任选其一即可。

1、修改_fix_control隐含参数:

代码语言:javascript
复制
alter session set "_fix_control" = '8560951:ON','5483301:ON';

2、修改OPTIMIZER_FEATURES_ENABLE参数

代码语言:javascript
复制
alter session set optimizer_features_enable='11.2.0.4';

参考官方文章:ORA-7445[qkaMarkQkn()+1584] Running a Large Query (Doc ID 2094809.1)


本次分享到此结束啦~

如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力。

技术交流可以 关注公众号:Lucifer三思而后行

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/06/12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 作者简介
  • 前言
  • 一、问题分析
  • 二、解决方案
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档