首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ERROR 2013 (HY000):“读取授权包”与MySQL服务器的连接丢失,系统错误:0

ERROR 2013 (HY000):“读取授权包”与MySQL服务器的连接丢失,系统错误:0
EN

Stack Overflow用户
提问于 2014-01-13 12:54:32
回答 13查看 169.1K关注 0票数 45

我收到以下错误

代码语言:javascript
复制
ERROR 2013 (HY000): Lost connection to MySQL server at 
'reading authorization packet', system error: 0

当试图连接到我的MySQL服务器时。

我所做的是:

  • 我在MySQL中有主从复制,它正在工作,只是使用F5增加了负载平衡功能。
  • 我已经根据他们的网站配置了F5。

但是当我试图使用F5配置的IP连接到我的F5服务器时,我得到了

代码语言:javascript
复制
ERROR 2013 (HY000): Lost connection to MySQL server at 
'reading authorization packet', system error: 0 

有什么想法吗?

更新我的进度:0

  • 我得到的错误与/var/log/secure中没有条目相同,就好像有人会试图验证来自我创建负载平衡服务器的ip的身份验证一样。 mysql错误日志中没有功能。 命令-什么也不返回

代码语言:javascript
复制
mysql> SHOW GLOBAL STATUS LIKE 'Aborted_connections';
Empty set (0.00 sec)

我已经修改了我的my.cnf文件并添加了

代码语言:javascript
复制
[mysqld]
skip-name-resolve

connect_timeout调到10。

所以我似乎没有得到我在F5上创建的服务器的响应。

我最终说服了F5管理员将F5服务器的日志传递给我,并且我已经完成了所需的全部工作。

这里是输出:

代码语言:javascript
复制
  Jan 28 15:46:39 tmm debug tmm[6459]: Rule /Common/iRule-f5_mysql_proxy <CLIENT_ACCEPTED>: BIG-IP MySQL Proxy -- clientside initial connection
Jan 28 15:46:39 tmm debug tmm[6459]: Rule /Common/iRule-f5_mysql_proxy <CLIENT_ACCEPTED>: BIG-IP MySQL Proxy -- clientside responding with server WELCOME packet
Jan 28 15:46:39 tmm debug tmm[6459]: Rule /Common/iRule-f5_mysql_proxy <CLIENT_DATA>: BIG-IP MySQL Proxy -- clientside authenticated flag not set
Jan 28 15:46:39 tmm err tmm[6459]: Rule /Common/iRule-f5_mysql_proxy <CLIENT_DATA>: BIG-IP MySQL Proxy -- mysql client: attempting to do something before authentication
Jan 28 15:46:39 tmm debug tmm[6459]: Rule /Common/iRule-f5_mysql_proxy <LB_SELECTED>: BIG-IP MySQL Proxy -- serverside selected pool /Common/foss-mysql-slave_pool node SLAVE-IP
Jan 28 15:46:39 tmm debug tmm[6459]: Rule /Common/iRule-f5_mysql_proxy <CLIENT_CLOSED>: BIG-IP MySQL Proxy -- clientside connection closed from MASTER-IP(XXXXXXX)
Jan 28 15:46:39 tmm debug tmm[6459]: Rule /Common/iRule-f5_mysql_proxy <SERVER_CLOSED>: BIG-IP MySQL Proxy -- serverside connection closed from node SLAVE-IP(XXXXXXXX)

为了安全起见我已经更换了ip!

就像一个额外的--我认为问题就在这里--我的mysql版本是5.1.69-日志 Thx All

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2014-03-18 11:15:37

From documentation

更少见的情况是,当客户端尝试与服务器的初始连接时,可能会发生这种情况。在这种情况下,如果您的connect_timeout值仅设置为几秒钟,则可以通过将其增加到10秒来解决问题,如果您有很长的距离或很慢的连接,则可能会更多。您可以使用“中止连接”之类的显示状态来确定是否正经历这种更不常见的原因。在服务器中止的每个初始连接尝试中,它将增加一个。您可能会看到“读取授权包”作为错误消息的一部分;如果是的话,这也表明这是您需要的解决方案。

尝试在您的my.cnf文件中增加my.cnf

另一种风格:

MySQL :在“读取初始通信包”时与MySQL服务器失去连接

  1. 在某种程度上,远程客户端不可能连接到MySQL服务器。
  2. 客户端( Windows上的一些应用程序)给出了一个模糊的描述,比如Connection unexpectedly terminated
  3. 在远程登录到MySQL客户端时,出现以下错误: ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0

在FreeBSD上,之所以会出现这种情况,是因为在/etc/hosts.allow.中没有找到匹配项,在行之前添加了下面的一行,表示ALL:ALL修复了这个问题:

代码语言:javascript
复制
mysqld: ALL: allow

在非FreeBSD系统上,如果要限制连接,则值得检查文件/etc/hosts.allow/etc/hosts.deny.,确保该行位于/etc/hosts.allow中。

代码语言:javascript
复制
mysqld: ALL

或检查主机是否在/etc/hosts.deny.中列出

在Arch中,类似的行可以添加到/etc/hosts.allow中。

代码语言:javascript
复制
mysqld: ALL
票数 23
EN

Stack Overflow用户

发布于 2014-03-11 21:03:45

这通常是由中断的连接造成的。您可以通过检查状态来验证这一点:

代码语言:javascript
复制
mysql> SHOW GLOBAL STATUS LIKE 'Aborted_connects';

如果当你失去连接时,这个计数器一直在增加,这就是你在连接过程中遇到问题的一个迹象。

在许多情况下,一种似乎有效的补救方法是增加超时时间。建议值为10秒:

代码语言:javascript
复制
mysql> SET GLOBAL connect_timeout = 10;

连接超时的另一个常见原因是反向DNS查找,这在验证客户端时是必要的。建议使用配置变量在MySQL中运行my.cnf:

代码语言:javascript
复制
[mysqld]
skip-name-resolve

这意味着GRANT语句需要基于IP地址而不是主机名。

我还在f5.com网站上找到了这份2012年的报告(现在被登录保护,但我得到了through Google cache)。

除非您运行的是大IP 11.1和MySQL 5.1,否则代理很可能无法工作,这是我测试的版本。MySQL协议有改变的习惯。

我建议您联系F5 Support并确认您使用的是支持的版本组合。

票数 10
EN

Stack Overflow用户

发布于 2017-08-24 22:18:09

我为这个错误做了很多斗争。试过了我在网上找到的每一个答案。

最后,我把我的电脑连接到我手机的热点上,一切都正常了。我发现我的公司的互联网阻塞了与MySQL的连接。

这不是一个完整的解决方案,但也许有人面临同样的问题。检查连接是值得的。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21091850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档