繁体   English   中英

使用VB.NET 2010远程访问网站的MySQL数据库

[英]Remote Access to MySQL database of a website using VB.NET 2010

我正在尝试将vb.net2010项目连接到网站的数据库。 我已经将%作为主机添加到cpanel的远程mysql访问中,并关闭了防火墙。

这是我使用的代码:

    Dim MySQLconn As New MySqlConnection
    MySQLconn = New MySqlConnection("server=www.mysite.net; User Id=myusername; pwd=mypassword; database=mydatabase; port=3306;")
            Try
                MySQLconn.Open()
                MsgBox("Sucess", vbOKOnly)
                MySQLconn.Close()
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try

捕获到错误,提示“无法连接到任何指定的MySQL主机”

希望我能得到帮助或建议。

谢谢。

请验证MySQL服务器在外部接口上进行侦听。

在大多数* nix环境中,它默认为localhost,这意味着即使禁用防火墙也无法从远程计算机连接。

这可以通过skip-networking来实现,也可以通过my.cnf文件中的bind-address localhost来实现。

尝试设定

bind-address x.x.x.x 

其中xxxx是www.mysite.net的IP地址,然后重新启动mysql服务器。

更新资料

当您使用cpanel时,是否已按照此处所述将IP地址列入白名单? http://kb.liquidweb.com/enable-remote-mysql-connections-in-cpanel/ http://www.yourhowto.net/how-to-make-a-remote-mysql-connection/

基本上有三件事要做:

  1. 将您的IP或%列为通配符(已完成此操作)
  2. 添加防火墙规则(不确定cpanel是否需要该规则,您可以使用端口扫描程序进行验证
  3. 您的用户需要权限才能从远程主机访问数据库( GRANT ... ON ... TO user@% )。 如果从命令提示符运行此命令,则应该获得密码提示符>mysql -h www.mysite.net -u user -p ,尝试登录。如果拒绝访问user @%,则需要授予权限用于user @ your-ip-address-or-hostname。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM