mysql与vbnet的远程连接

时间:2014-04-02 10:05:17

标签: mysql vb.net

我收到此错误:“从流中读取失败。”

以下是我的代码:

Imports MySql.Data.MySqlClient

Public Class Form1
    Dim dbds As New DataSet
    Dim MySQLconn As New MySqlConnection
    Dim SQLda As New MySqlDataAdapter
    Dim cmd As MySqlCommand

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    MySQLconn = New MySqlConnection("server=www.address.com;User Id=user_nem;pwd=***;port=2082;database=db_db_db")


    Try
        MySQLconn.Open()
        MsgBox("Sucess, press ok to continue…", vbOKOnly)
         cmd.CommandText=(("set net_write_timeout=99999; set net_read_timeout=99999"), MySQLconn)
        cmd.ExecuteNonQuery()
        SQLda = New MySqlDataAdapter(("SELECT * FROM log_in"), MySQLconn)
        SQLda.Fill(dbds, "doctors")
        DataGridView1.DataSource = dbds.Tables("doctors")

    Catch ex As Exception
        MsgBox(Err.Description)
    End Try

End Sub

End Class

此代码适用于我的localhost。 任何帮助将不胜感激。谢谢。

1 个答案:

答案 0 :(得分:0)

我猜mysql用户user_nem只能通过localhost访问数据库。

尝试创建像这样的用户

GRANT ALL PRIVILEGES ON yourDbName.* To 'myuser'@'%' IDENTIFIED BY 'password';

'myuser'@'%'表示来自任何myuser位置的名为%的用户。 (别忘了在连接字符串中更新该用户名)

我现在猜它是'user_nem'@'localhost''user_nem'@'127.0.0.1'这就是为什么它在本地工作,而不是在远程工作。

尝试检查防火墙。