Azure mysql虚拟机在一段时间后停止工作

时间:2016-09-27 21:15:01

标签: c# mysql azure asp.net-web-api

我在azure上部署了一个ASP.net Web API,我在Linux上运行的单独虚拟机中也有一个MySql数据库。我遇到的问题是,当我重新启动数据库并从visual studio重新部署Web API时,web API和mySql之间的连接工作正常但是在30分钟之后我收到此错误:

"无法连接到任何指定的MySQL主机"

如果我想再次使用,我必须使用数据库重新启动虚拟机,并从visual studio重新部署Web API。我正在使用这样的连接字符串来连接我的网络配置

<add name="DefaultConnection" connectionString="Server=publicIpAddress;Port=3306;Database=db_12345_db;Uid=user;Pwd=*********;" providerName="MySql.Data.MySqlClient" />

此连接正在我们切换到azure之前的服务器上运行。我怀疑我没有正确配置azure。

知道如何解决这个问题吗?感谢

1 个答案:

答案 0 :(得分:-1)

连接丢失

连接到Azure SQL数据库时,一段时间不活动后,网络组件(如防火墙)可能会终止空闲连接。在这种情况下,有两种类型的空闲连接:

  • 在TCP层空闲,可以通过任意数字删除连接 网络设备。
  • 闲置的SQL Azure网关,可能会发生TCP keepalive消息(从TCP角度来看,连接不是空闲的),但在30分钟内没有活动查询。在这种情况下,网关将确定TDS连接在30分钟处于空闲状态并终止连接。

https://github.com/sidorares/node-mysql2/issues/316
希望这对你有用。