我在 C# .net core 和 AWS Aurora Serverless (MySql) 之间有一个非常奇怪的连接问题。我有一个非常简单的 Web API 用于测试。我的一个端点很容易获得一个表的第一行:
string cnString = "myConnectionString";
string returnData = "";
using (MySqlConnection cnData = new MySqlConnection(cnString))
{
using (MySqlCommand cmdData = new MySqlCommand("SELECT userName FROM users LIMIT 1", cnData))
{
await cnData.OpenAsync();
await cmdData.ExecuteScalarAsync();
returnData = (string)cmdData.ExecuteScalar();
}
}
return Ok(returnData);
我安装了 MySql.Data NuGet 包。部署包时,出现错误:无法连接到任何指定的 MySQL 主机。(序列包含多个匹配元素)
如果我卸载 MySql.Data 包并安装 MySqlConnector 包,则没有错误,一切正常。代码或连接字符串没有变化。我唯一改变的是 NuGet 包。
我认为这并不重要,但我的应用程序已部署到 Amazon Linux EC2 实例。
有谁知道为什么 MySql.Data 包不起作用?对于我的部署,我需要那个包并且我不能使用 MySqlConnector 包。