aws天蓝网站的mysql连接问题

问题描述 投票:0回答:2

我似乎无法找到我的问题的答案。

我用.net创建了一个快速的小网站,并将其发布在azure上。当我测试它我可以查询我的aws mysql数据库就好了但是在发布后我得到了。

System.InvalidOperationException: Connection must be valid and open. at 
MySql.Data.MySqlClient.Interceptors.ExceptionInterceptor.Throw(Exception 
exception) at MySql.Data.MySqlClient.MySqlConnection.Throw(Exception ex) at 
MySql.Data.MySqlClient.MySqlCommand.Throw(Exception ex) at 
MySql.Data.MySqlClient.MySqlCommand.CheckState() at 
MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior) 
at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader() at 
TaskiiLink._Default.Page_Load(Object sender, EventArgs e) in 
C:\............\Default.aspx.cs:line 39

第39行:MySqlDataReader reader = command.ExecuteReader();

我的连接字符串是:

 <add name="dbconn" connectionString="user id=NAME;Password=PASS;persistsecurityinfo=true;server=AWSENDPOINT;Port=3306;database=DB;" providerName="MySql.Data.MySqlClient"/>

页面加载代码

 if(Request["type"] == "1")
   {
     string sql = "checkDB";
     conn.Open();
     using (MySqlCommand command = new MySqlCommand(sql))
      {         
       command.Connection = conn;
       try
        {
          MySqlDataReader reader = command.ExecuteReader();
          if (!reader.Read())
             {
               Response.Write("false");
             } else
             {
               Response.Write("true");
             }
mysql azure amazon-web-services
2个回答
0
投票

您需要传递连接对象。

MySql.Data.MySqlClient.MySqlCommand myCommand = new MySql.Data.MySqlClient.MySqlCommand(insertQuery, connection);

0
投票

自己想出来,

AWS安全组仅允许我的本地主机ip作为入站。

在azure门户网站的属性设置中找到了我的网络应用程序出站IP。

如果有人有相同的问题,有用的链接。

AWS问题

https://forums.aws.amazon.com/thread.jspa?threadID=176030

天蓝色的信息

https://social.msdn.microsoft.com/forums/azure/en-US/fd53afb7-14b8-41ca-bfcb-305bdeea413e/maintenance-notice-upcoming-changes-to-increase-capacity-for-outbound-network-calls

我在添加ip解决方案时遇到的问题。

https://forums.aws.amazon.com/thread.jspa?threadID=158994

© www.soinside.com 2019 - 2024. All rights reserved.