【OceanBase诊断调优】—— SQL 执行报错而不能计入 SQL_AUDIT 的情况

通常,执行成果的 SQL 都会计入 SQL_AUDIT 中,而执行报错的 SQL 则需要依据其执行报错的阶段来决定是否计入 SQL_AUDIT 中。

在 OceanBase 数据库中,SQL 请求的执行流程如图所示。

如果 SQL 在进入 Executor 阶段前发生报错,则该 SQL 的执行信息无法计入 SQL_AUDIT 中,比如:

  • SQL 中有语法错误,Parser 阶段报错。
  • SQL 中的表或者列不存在,Resolver 阶段报错。

如果 SQL 在 Executor 阶段发生报错,则该 SQL 的执行信息会被统计并写入 SQL_AUDIT 中,比如:

  • Insert 时发生主键冲突错误。
  • SQL 执行时发生超时。

适用版本

OceanBase 数据库所有版本

相关推荐
一心只为学13 分钟前
Oracle密码过期问题,设置永不过期
数据库·oracle
小光学长22 分钟前
基于vue框架的宠物销售管理系统3m9h3(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
数据库
小菜yh1 小时前
关于Redis
java·数据库·spring boot·redis·spring·缓存
Microsoft Word1 小时前
数据库系统原理(第一章 数据库概述)
数据库·oracle
华为云开源1 小时前
openGemini 社区人才培养计划:助力成长,培养新一代云原生数据库人才
数据库·云原生·开源
小安运维日记3 小时前
Linux云计算 |【第四阶段】NOSQL-DAY1
linux·运维·redis·sql·云计算·nosql
kejijianwen4 小时前
JdbcTemplate常用方法一览AG网页参数绑定与数据寻址实操
服务器·数据库·oracle
编程零零七4 小时前
Python数据分析工具(三):pymssql的用法
开发语言·前端·数据库·python·oracle·数据分析·pymssql
高兴就好(石7 小时前
DB-GPT部署和试用
数据库·gpt
这孩子叫逆8 小时前
6. 什么是MySQL的事务?如何在Java中使用Connection接口管理事务?
数据库·mysql