2

好的,所以我正在尝试从我的 Web 主机连接到我的数据库,但是如果我使用“localhost”,支持人员一直说在我的 C# 程序中使用“localhost”,它会连接到我本地计算机上的 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?

4

3 回答 3

0

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

于 2012-07-07T16:18:25.137 回答
0

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

如果您使用的是 .NET 4,您实际上可以在 web.config 上运行转换以根据您的目标配置更改设置。这样,您就可以拥有在本地计算机上运行时使用的调试配置,以及在发布模式下发布项目时使用的发布配置。要在两者之间切换,您只需更改 Visual Studio 中的构建配置。

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

于 2012-07-07T16:26:39.890 回答
0

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

于 2012-07-07T16:27:43.417 回答