关于日常使用Azure MySQL中遇到的连接问题以及排查方法分享

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于日常使用Azure MySQL中遇到的连接问题以及排查方法分享相关的知识,希望对你有一定的参考价值。

由于防火墙问题,TCP keep alive 问题,以及 mysql 自身的参数问题这三个在使用中比较常见,所以今天就分享下自己找到的排查方法。

今天先聊一聊防火墙问题

大多数人在第一次创建 MySQL database on Azure 实例之后便开始尝试连接。但是往往遇到的结果不是连接成功而是如下图所示的错误信息:

 技术分享

该错误信息表明您的 IP 地址并不在 MySQL on Azure 防火墙的准入范围之内,这种设定可以在某种程度上避免设置了简单密码的生产用户遭到恶意的字典攻击,当然 Azure 还有其他的手段可以防范遭到恶意入侵之后的解救办法,不过这并不在这篇文章的讨论范畴。

既然知道了是防火墙禁止了您的访问请求那么第一步就应该把客户端的 IP 地址添加到防火墙中的允许列表中去。

首先打开 Azure 门户上的 MySQL 数据库,点击 "连接安全",右侧面板中就出现了"添加客户端 IP" 的按钮。

 技术分享

点击 添加客户端 IP ,在此处输入你防火墙的准入 IP 列表名称(自定义),IP 起始地址,IP 结束地址

 技术分享

将当前 IP 填入,点击保存。 稍等片刻,即可开启您的 MySQL Azure 之旅。

Note

避免将 IP 范围设置为如下所示的 0.0.0.0-255.255.255.255,该设置意味着 Azure 防火墙的失效。

 技术分享

希望能帮助到在Azure中遇到同样问题的朋友,图片如果看不到的话可以点击此处查看

以上是关于关于日常使用Azure MySQL中遇到的连接问题以及排查方法分享的主要内容,如果未能解决你的问题,请参考以下文章

[日常] 解决mysql localhost可以连接但是127.0.0.1不能连接

Azure Database for MySQL - webapp nodejs

带有特殊字符的 Azure 连接字符串

一般连接池是怎么处理mysql自动回收长时间

关于从 access db 到 Azure SQL 的 ODBC 连接

Spring Boot - 无法连接 Azure MySQL 数据库