注意防火牆是否有擋到3306
在這之前 先注意mySQL伺服端的使用者ID權限是否開放成予許遠端連線 預設是允許本地連線
修改位置找my.ini設定檔
1) 開啟 TCP 3306 (預設 MySQL Port)。
2) 新增一個 User,主機(Host) 為允許連線的網域或 IP,如果不限制可以用「%」表任何主機。
如果不行請檢查 mysql 設定檔 (my.ini 或 my.cnf),註解下面文字
skip-networking
bind-address=127.0.0.1
可參考網站
http://ikaritw.pixnet.net/blog/post/23475839
http://blog.linym.net/archives/96
以下是VB2005使用語法 必須安裝 MySQL Connector 5.2 版/.Net 去mySQL官網抓
Imports MySql.Data.MySqlClient
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'------------建立連線物件--------------------
'Dim pubsSQLConn As New MySqlConnection 'db 连接
'Dim conStr As String = "server=140.121.179.226;user id=jkl;pwd=123456;database=aaa;port=3306" '连接字符串
'pubsSQLConn.ConnectionString = conStr
'----以上三行可以合併成一行 如下
Dim pubsSQLConn As New MySqlConnection("server=140.121.179.226;user id=jkl;pwd=123456;database=aaa;port=3306") 'mysqlport=3306
'-------
pubsSQLConn.Open() '使用連線
'----------一些sql 的動作語法-----------查詢 ,寫入--------
' Dim myquery As String = " INSERT INTO aaa.bbb (ab, op) VALUES ('AAAs', 'BBBs') "
' Dim myquery As String = " INSERT INTO aaa.bbb (ab) VALUES ('qqqkman') " '對bbb資料表裡的op欄位插入qqqkman值
' Dim myquery As String = "SELECT op FROM bbb LIMIT 0, 30 "
Dim myquery As String = "select * from bbb " ' 去查詢有一個資料表 bbb 裡所有資料
' Dim myquery As String = "select op from bbb " ' 去查詢有一個 bbb資料表 裡 op 欄位內資料
'-----------建立橋接器 ---------------------
' Dim cmd_sql As New MySqlCommand(myquery, pubsSQLConn) '(命令動作,連線)
'Dim adpt As New MySqlDataAdapter(myquery, pubsSQLConn) '(sql動作語法,連線)
'adpt.SelectCommand = cmd_sql
'-----------
Dim adpt As New MySqlDataAdapter(myquery, pubsSQLConn) '以上三行可合併成一行 這樣寫
'-----------
Dim myData As New DataTable '建立本地記憶體資料表
myData.Clear()
'----使用橋接器-------------------
adpt.Fill(myData) '將遠端資料喬進本地 DATATABLE 也將本地資料喬進遠端
DataGridView1.DataSource = myData 'GRIDVIEW控制項顯示出來
End Sub
End Class