2012-07-07 173 views
2

好吧,所以我试图从我的web主机连接到我的数据库,但支持人员一直说在我的C#程序中使用“localhost”,如果我使用“localhost”到本地机器上的mysql数据库。从我的C#应用​​程序连接到我的远程mysql数据库

我只是想知道,当我的程序连接到我的数据库以使其连接到我的服务器并在我的服务器下使用“localhost”时,是否有什么我可以放在“服务器”参数下?我需要做一些DNS吗?如果是的话,我会添加什么?它在我的网络主机的DNS记录编辑器下面显示“名称”和“地址”。

这是我的代码 的要求:JMK(密码和UID删了)

string connString = "Server=localhost.mydomain.com;Database=***;Uid=bender;password=***"; 
      MySqlConnection conn = new MySqlConnection(connString); 
      MySqlCommand command = conn.CreateCommand(); 
      command.CommandText = "SELECT * FROM users"; 
      try 
      { 
       conn.Open(); 
      } 
      catch(Exception ex) 
      { 
       MessageBox.Show(ex.Message); 
      } 
      MySqlDataReader reader = command.ExecuteReader(); 
      while (reader.Read()) 
      { 
       listView1.Items.Add(reader["username"].ToString()); 
      } 

这是我的代码。我试过“localhost.mydomain.com”,但它只是重定向到我的本地主机。我将如何获得我的域名的IP?

+0

你可以发布你使用的代码吗?你只需要把MySQL服务器的IP地址放在“服务器”参数下。 – JMK 2012-07-07 16:16:07

+0

完成,发布代码 – ThatBenderGuy 2012-07-07 16:29:03

回答

0

如果你想连接到“support people”服务器,你需要指定它的地址。他们希望你使用本地主机,因为可能应用程序将站在服务器运行的同一台机器上,但是你正在本地机器上开发,所以localhost就是你的PC本身。为了获得更大的灵活性,我会使用2个配置文件(发布和调试)自动分配哪台机器连接(目标机器名称取自目标团队或本地主机,它将指向您的PC)。

0

他们在说localhost,因为数据库与Web服务器在同一台服务器上运行。当你说“从我的程序连接到我的数据库以连接到我的服务器”时,你的意思是你自己的数据库服务器不在你的开发PC上吗?

如果您使用.NET 4,则可以在web.config上实际运行转换,以根据目标配置更改设置。这样,您可以在您的本地机器上运行时使用Debug配置,以及在发布模式下发布项目时使用的Release配置。要切换,那么你只需在Visual Studio中更改构建配置。

这里是它如何工作的一点点的更多信息:http://www.shubho.net/2011/03/transformation-webconfig-aspnet-40.html

0

当您使用godaddy.com它为您提供了有mysql数据库的全局访问选项,给你,你可以在任何地方使用主机名。并非所有提供商都提供该选项。 您还应该考虑通过互联网进行延迟和不安全的数据传输。

+0

雅我使用x10托管,我不认为我有这个选项。 – ThatBenderGuy 2012-07-07 16:30:15

相关问题