首批通过分布式安全可靠测评,为关键业务系统打造
SQL 执行报错 timeout
更新时间:2025-06-17 09:01
执行 SQL 报错 Query timed out
问题现象
在 SQL 窗口中执行 SQL 超报错。
报错信息:
ErrorCode = 1317, SQLState = 70100, Details = (conn=405741) Query timed out报错信息示例:

问题原因
SQL 的执行时间超过了 ODC 在驱动层设定的超时时间。
影响的版本
桌面版和 Web 版 ODC V4.1.0 之前版本。
解决方法
在连接详情页面,更改 SQL 查询超时时间 ,使其大于 SQL 的实际执行时间。
执行 SQL 报错 Timeout
问题现象
在 SQL 窗口中执行 SQL 超时报错。
报错信息:
ORA-00600: internal error code, arguments: -4012, Timeout报错信息示例:

问题原因
SQL 的执行时间超出 ob_query_timeout 配置的值。
影响的版本
所有版本的桌面版和 Web 版 ODC。
解决方法
ODC V4.2.0 之前的版本
在 ODC 的 会话 > 会话属性 > 会话变量 中配置 ob_query_timeout 的值,如果值过小需要将其调大以防止 Server 层级的查询超时。
ODC V4.2.0 及之后的版本
在 ODC SQL 窗口的 运维 > 全局变量 > 会话属性 中配置 ob_query_timeout 的值,如果值过小需要将其调大以防止 Server 层级的查询超时。
执行 SQL 报错 Connection Timeout
问题现象
SQL 窗口中查看 OceanBase V4.1.0 表对象超时报错。

查看 ALL_TAB_COLS 视图数据超过 30s。

问题原因
缺少 ALL_VIRTUAL_CORE_ALL_TABLE 和 ALL_VIRTUAL_CORE_COLUMN_TABLE 虚表统计信息导致计划走偏,DBA_TAB_COLUMNS 相关系统视图查询慢。主要原因是虚表未包含统计信息时,会使用默认的统计信息,导致计算虚表的代价过高而计划走错。
影响的版本
所有版本的桌面版和 Web 版 ODC。
解决方法
执行以下命令收集统计信息。
call dbms_stats.gather_table_stats('SYS','ALL_VIRTUAL_CORE_ALL_TABLE'); call dbms_stats.gather_table_stats ('SYS','ALL_VIRTUAL_CORE_COLUMN_TABLE');在 ODC 中查看表信息,同时 ALL_TAB_COLS 视图速度提升。
