我似乎无法从我的 Azure Linux VM 连接到我的 MySQL 服务器的 Azure 数据库

I can't seem to connect to my Azure Database for MySQL server from my Azure Linux VM

我在 Azure 中部署了一个 Linux 虚拟机 (Debian 9),启用并正确添加了 Sql 的服务端点 - 如果我将门户导航到 VNet 并进入“服务端点”选项卡,我可以清楚地看到列出的 Sql 服务端点。仅供参考,服务端点的原因是虚拟机有一个动态 IP,所以我不能只在数据库资源的配置中将它列入白名单。

另一方面,我有一个 'Azure Database for MySQL server' 部署在相同的资源组、相同的位置等等,但我似乎无法连接到它。

我尝试连接的步骤如下:

我一直在阅读文档并在论坛中搜索可能发生这种情况的原因,但我似乎无法让它发挥作用。我曾尝试更改数据库资源的连接安全选项卡中 "Allow access to Azure services" 选项的状态,但这似乎并不重要。

谁能知道我该如何解决这个问题?

你说你在虚拟网络上启用了 SQL 终结点,但你是否向实例添加了 VNET 规则(附加现有 VNET)?您可以在 MySQL 服务器的 Azure 数据库 -> 连接安全 -> VNET 规则 -> 附加现有 VNET.

中找到它

如果您看不到您的 VNET 列出,则表明您的 SQL 服务器和 VNET 的区域不匹配:它们必须部署到同一个区域。另外检查您是否有通用或内存优化服务器,此功能在基本层中不可用。

如果所有这些都已就绪,请尝试在 SQL 服务器上启用诊断,尝试再次登录几次,然后查看日志文件和 post 任何奇怪的事情。