每个主机的MySQL连接

时间:2011-12-21 15:21:55

标签: mysql vb.net

我正在vb.net中创建一个winforms应用程序,它连接到我的网络服务器上的mysql数据库来读取和写入数据,这一切都正常。

但我必须允许用户ip远程连接到数据库。

是否可以让每个人都能访问数据库?如果数据丢失,用户帐户将没有所有权利,数据不是很重要。

用户帐户和连接详细信息是硬编码的。

我知道这不安全,但这并不重要。

3 个答案:

答案 0 :(得分:1)

是的,您可以通过主机中的通配符将数据库的GRANT权限授予同一用户。更多信息here

  

您可以在主机名中指定通配符。例如,user_name @'%。example.com'适用于example.com域中任何主机的user_name,user_name @'192.168.1.%'适用于192.168.1 C类子网中任何主机的user_name。

     

简单形式user_name是user_name @'%'的同义词。

这样每个应用程序都可以从随机主机连接到数据库,并在连接字符串中使用相同的用户名/密码进行身份验证,MySQL将允许它,因为未明确指定权限的主机部分。

答案 1 :(得分:1)

是的,这很可能。在您的mysql权限表中,您必须向用户授予通配符(%)主机访问权限。然后在你的VB.NET代码中使用connectionString中的地址。

答案 2 :(得分:0)

  

但我必须允许用户ip远程连接到数据库。

为什么?

另外两个选择:

1 - 将数据公开为Web服务。它已经在网络服务器上......
2 - 构建Web应用程序而不是桌面应用程序。