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

相关推荐
kongba0071 分钟前
2026年4月19日 kimi记忆备份
java·前端·数据库
xyyaihxl5 分钟前
【SQL技术】不同数据库引擎 SQL 优化方案剖析
数据库·sql
21439655 分钟前
Less如何构建CSS样式库_通过继承机制优化组件化开发
jvm·数据库·python
qq_413847406 分钟前
如何通过 reflect.Value 获取切片的底层值
jvm·数据库·python
zhangchaoxies8 分钟前
JavaScript中单线程事件循环EventLoop的卡顿预警
jvm·数据库·python
InfinteJustice8 分钟前
Laravel Blade 中高效筛选并限制关联分类数据的实践指南
jvm·数据库·python
2301_8152795210 分钟前
SQL分组求和结果显示为零的技巧_利用IFNULL或CASE语句
jvm·数据库·python
zhangchaoxies10 分钟前
Python Web应用负载均衡方案_结合Nginx权重设置实现高可用
jvm·数据库·python
qq_3345635510 分钟前
C#怎么操作SQLite加密数据库 C#如何创建和使用加密的SQLite数据库文件保护数据【数据库】
jvm·数据库·python
qq_4138474012 分钟前
Redis如何利用Lua实现秒杀资格与库存的双重校验
jvm·数据库·python