Azure Database for MySQL 连接问题常见排查方法
06/13/2019
本文内容
Azure Database for MySQL 连接问题是使用 MySQL 数据库的常见问题,本文将会详细介绍 Azure Database for MySQL 连接出现问题时的常见问题及排查方法。具体常见原因及排查思路如下。
对连接的驱动版本有要求
Azure Database for MySQL 对于驱动的版本及管理工具的兼容性有要求,如果驱动版本或者管理工具不兼容,会造成连接不了的问题,具体可以参考文档:与 Azure Database for MySQL 兼容的 MySQL 驱动程序和管理工具。
MySQL的存储达到上限值
目前 Azure Database for MySQL 当可用存储量低于 5 GB 或 5% 的预配存储(以较低者为准)时,服务器会标记为只读。当存储满了以后就会导致新的连接连不上。目前可以在 Azure 门户上设置存储超过多少百分比的时候,可以发送邮件。Azure 平台正在设计 Azure Database for MySQL 存储自动扩展功能,该功能上线后可以解决这个问题。
Timeout 的限制导致连接不上
由于 MySQL Client 在等待服务器端返回时不会有任何操作,所以在查询时间长度超过 4 分钟时,会被 Azure Gateway 终结。针对这种问题首先需要对客户端的 Heartbeat 参数进行设置。在 Windows 端没有默认的 Heartbeat 功能,需要通过参数开启,在修改了 Heartbeat 之后,Windows 需要重启电脑。Linux 端由于默认的 Heartbeat 间隔过长,同样会导致 Azure Gateway 认为客户端无响应,所以需要缩短该参数。具体的配