---
title: SQL 执行报错 Unknown thread id -OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 SQL 执行报错 Unknown thread id 相关的常见问题和使用技巧，帮助您快速解决 SQL 执行报错 Unknown thread id 的难题。
---
切换语言

- 简体中文
- English

划线反馈

# SQL 执行报错 Unknown thread id

更新时间：2026-03-11 07:26

适用版本： V3.1.x、V3.2.x、V3.3.x、V3.4.x、V4.0.x、V4.1.x、V4.2.x 内容类型：Troubleshoot  

## 问题现象

使用 ODC 执行`UPDATE`语句时，OBServer 报错 `Unknown thread id`。

![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/odc/KB/3.common-troubleshooting/3.sql-execution/3.unknown-thread-id/1.png)

## 问题原因

出现此类问题可能的查询链路为：ODC/驱动 > Nginx/F5 > 多个 OBProxy > OBServer。

ODC 中数据库连接的 SQL 查询超时时间为默认 60s，此 UPDATE 语句需要约 70 秒左右才能执行完成，所以会触发驱动层面判断语句超时，进而引发驱动层从 OBProxy 发送 `kill query` 至 OBServer。

由于驱动发送的 `kill query id` 为后端建立请求时返回的`OBProxy Client connection id`，该`id`维护在某台 OBProxy 内部，OBProxy 节点之间不共享。

ODC 通过 nginx/F5 地址访问后端的 OBProxy 集群时，接收到此 `kill query` 请求的 OBProxy 并非与 OceanBase 数据库建立连接的 OBProxy，无法找到该`id`，则会返回 `unknown thread id` 错误。

## 影响的版本

所有版本的桌面版和 Web 版 ODC。

## 解决方法

- ODC V4.1.0 之前版本

  增大 ODC 连接配置中的 **SQL 查询超时时间** ，避免驱动层超时引发的 kill 动作。

  ![2](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/odc/KB/3.common-troubleshooting/3.sql-execution/3.unknown-thread-id/2.0.png)
 - ODC V4.1.0 及之后版本

  通过会话变量 `ob_query_timeout` 设置查询超时时间。

  ![3](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/odc/KB/3.common-troubleshooting/3.sql-execution/3.unknown-thread-id/3.png)

Previous

[SQL 执行报错 Over tenant memory limits](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000262291)

Next

[SQL 执行报错 timeout](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000262293) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
