[英]Can't connect to remote mysql database server
我不明白為什么我無法在 VMware 中訪問 ubuntu 中的遠程 MySQL 服務器。 我已經有了代碼,它成功連接到我的本地主機以及插入、刪除和更新數據。 但是當我用指定的 IP 服務器地址創建一個新的連接字符串時,它顯示一個錯誤:
我只能通過 SSH 和瀏覽器 (192.168.56.xxx/phpmyadmin) 訪問該服務器中的文件。
這是我的連接字符串代碼。
Dim conn As New MySqlConnection
conn.ConnectionString = "Server=192.168.56.xxx;port=3306;User=root;password=mypassword;Database=prodDB_vb"
conn.Open()
MessageBox.Show("Connection to Database has been opened.")
cmd.Connection = conn
我已經閱讀了很多關於這個的論壇。 但不明白他們指的是什么。 我也執行了代碼:
GRANT ALL PRIVILEGES ON prodDB_vb TO 'root@*' IDENTIFIED BY 'my_password';
FLUSH PRIVILEGE;
我唯一知道的是我在服務器文件中找不到 my.cnf,但已經在我的本地主機的綁定 IP 地址中更改了 my.ini。
#bind-address="127.0.0.1"
3306正在聽
我的 my.cnf 中有這個
為什么會出現這個錯誤?
任何人請幫忙。
您是否檢查以確保 MySQL 實際上正在偵聽 3306? 運行 netstat -tlpn 並提供結果。 如果您沒有看到 3306,那么它可能沒有。
在 my.cnf 中,您應該驗證 --skip-networking 已被注釋掉
[mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp language = /usr/share/mysql/English bind-address = 65.55.55.2 # skip-networking
定位您的CNF 文件
編輯:
例如,如果您的 MySQL 服務器 IP 是 192.162.0.3,那么整個塊應該如下所示:
[mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp language = /usr/share/mysql/English bind-address = 192.168.0.3 # skip-networking .... .. ....
然后我們必須重新啟動mysql服務才能使更改生效:
/etc/init.d/mysql restart
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.