---
title: 与服务器的连接断开，错误代码 ERROR 2013-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 与服务器的连接断开，错误代码 ERROR 2013相关的常见问题和使用技巧，帮助您快速解决 与服务器的连接断开，错误代码 ERROR 2013的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# 与服务器的连接断开，错误代码 ERROR 2013

更新时间：2024-08-29 05:46

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

本文介绍 OceanBase 数据库 MySQL 模式下与服务器的连接断开并报 `ERROR 2013` 错误的处理方法。

## 问题现象

成功连接数据库后，会话空闲较长一段时间再执行查看 `ordr` 表数据的 SQL 语句，报连接断开的错误。

```shell
obclient [test]> SELECT * FROM ordr;
ERROR 2013 (HY000): Lost connection to MySQL server during query

```

## 可能原因

OceanBase 数据库中，当会话空闲时间超过指定的阈值时，系统将主动关闭当前连接，并在执行下一次操作时报 `ERROR 2013` 的错误。

## 解决方法

请参考以下步骤，查看并修改会话相关变量的值。以下设置变量的方法仅对当前会话有效，如果需要保证设置永久生效，请使用 `SET GLOBAL` 语法配置相同变量后，再重启会话使其生效。

1. 重新连接到对应的 MySQL 租户。
 2. 查看系统与时间相关的变量。

   ```shell
   obclient [test]> SHOW VARIABLES LIKE '%time%';
   +---------------------------------+------------------+
   | Variable_name                   | Value            |
   +---------------------------------+------------------+
   | connect_timeout                 | 10               |
   | default_password_lifetime       | 0                |
   | error_on_overlap_time           | OFF              |
   | explicit_defaults_for_timestamp | ON               |
   | interactive_timeout             | 10000            |
   | lock_wait_timeout               | 31536000         |
   | long_query_time                 | 10               |
   | max_execution_time              | 0                |
   | net_read_timeout                | 30               |
   | net_write_timeout               | 60               |
   | ob_pl_block_timeout             | 3216672000000000 |
   | ob_query_timeout                | 10000000         |
   | ob_trx_idle_timeout             | 86400000000      |
   | ob_trx_lock_timeout             | -1               |
   | ob_trx_timeout                  | 86400000000      |
   | system_time_zone                | +08:00           |
   | timestamp                       | 0                |
   | time_format                     | %H:%i:%s         |
   | time_zone                       | +8:00            |
   | wait_timeout                    | 10000            |
   +---------------------------------+------------------+
   20 rows in set

   ```
 3. 将变量 `wait_timeout` 的值设置为 `28800`。

   #### 说明

   变量 `wait_timeout` 用于指定服务器关闭非交互连接前等待活动的秒数。

   ```shell
   obclient [test]> SET wait_timeout = 28800;
   Query OK, 0 rows affected

   ```
 4. 将变量 `interactive_timeout` 的值设置为 `28800`。

   #### 说明

   变量 `interactive_timeout` 用于指定服务器关闭交互式连接前等待活动的秒数。

   ```shell
   obclient [test]> SET interactive_timeout = 28800;
   Query OK, 0 rows affected

   ```
 5. 再次查看 `ordr` 表。可以正常查询。

   ```shell
   obclient [test]> SELECT * FROM ordr;
   +----+---------------------+---------------------+
   | id | gmt_create          | gmt_modified        |
   +----+---------------------+---------------------+
   |  1 | 2022-03-16 14:23:10 | 2022-03-16 14:23:10 |
   |  2 | 2022-03-16 14:23:10 | 2022-03-16 14:23:10 |
   |  3 | 2022-03-16 14:23:10 | 2022-03-16 14:23:10 |
   +----+---------------------+---------------------+
   3 rows in set

   ```

上一篇

[OB_EXCEED_MEM_LIMIT 错误码 4080 产生原因](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000283017)

下一篇

[select a(a'') 断连接的问题](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000036893) ![有帮助](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) 咨询热线
