【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 数据库所有版本

相关推荐
阿蒙Amon37 分钟前
C#读写文件:多种方式详解
开发语言·数据库·c#
东窗西篱梦1 小时前
Redis集群部署指南:高可用与分布式实践
数据库·redis·分布式
就是有点傻2 小时前
C#如何实现中英文快速切换
数据库·c#
jnrjian2 小时前
Oracle RAC环境 加错数据文件 的修复 归档非归档都没问题
sql·oracle
1024小神2 小时前
hono框架绑定cloudflare的d1数据库操作步骤
数据库
KellenKellenHao4 小时前
MySQL数据库主从复制
数据库·mysql
@ chen4 小时前
Redis事务机制
数据库·redis
KaiwuDB5 小时前
使用Docker实现KWDB数据库的快速部署与配置
数据库·docker
一只fish5 小时前
MySQL 8.0 OCP 1Z0-908 题目解析(16)
数据库·mysql
泊浮目5 小时前
未来数据库硬件-网络篇
数据库·架构·云计算