MySQL Error Log: Got packets out of order
2024-09-18 14:29 abce 阅读(314) 评论(0) 编辑 收藏 举报在MySQL错误日志中发现有偶发的如下信息:
1 2 3 4 5 6 7 | 2024-09-13T15:55:29.489324+08:00 26750047 [Note] [MY-010914] [Server] Got packets out of order 2024-09-13T15:55:29.544688+08:00 26750048 [Note] [MY-010914] [Server] Got packets out of order 2024-09-13T15:55:29.590259+08:00 26750049 [Note] [MY-010914] [Server] Got packets out of order 2024-09-13T15:55:29.658435+08:00 26750090 [Note] [MY-010914] [Server] Got packets out of order 2024-09-13T15:55:29.686936+08:00 26750091 [Note] [MY-010914] [Server] Got packets out of order 2024-09-13T15:55:29.707194+08:00 26750092 [Note] [MY-010914] [Server] Got packets out of order 2024-09-13T15:55:29.758550+08:00 26750093 [Note] [MY-010914] [Server] Got packets out of order |
MySQL Server在遇到网络问题的时候,会发生MY-010914错误,比如:
·与数据库的连接中断
·握手失败
·读取通信数据包时出现错误
·拒绝用户访问...
·写入通信数据包出错
·...
还可以使用 Performance_Schema.error_log 表直接在 SQL 中找到这些错误信息:
1 2 3 | select logged, error_code, data from performance_schema.error_log where error_code= 'MY-010914' and data like 'Got packets out of order%' ; |
那么,既然我们看到了这些错误信息,它们是从哪里来的呢?这些错误很有可能是由 MySQL Shell 引起的!
如果使用 MySQL Shell 连接 MySQL,提供了端口但没有提供协议,MySQL Shell 会首先尝试使用 X 协议,如果失败,就会使用经典协议。
例如,此命令将在 MySQL 错误日志中产生一个Got packets out of order错误:
1 | $ mysqlsh root@localhost:3306 |
不过,这个问题已经在MySQL Shell 9.0中得到了修复。
MySQL Shell 指定协议就能解决这个问题:
1 | $ mysqlsh mysql://root@localhost:3306 |
MySQL Shell 支持 URI,如 protocol://user@host:port,其中协议可以是 mysql 或 mysqlx。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
2022-09-18 【SQLServer】并行执行计划中的分支和线程