唉,mysql對於我來說太陌生了,這麼多了,看都沒看過,更別說用了。
正好今天用上了,想串連遠端mysql,結果卻折騰了好長一段時間啊,實屬無奈,不巧網上東搜西查的,竟然找到瞭解決之道,為不至於忘記。
首先在遠程端需要進入mysql command line client,把root的password一輸,執行一個語句就OK了……
說明:
1、改表法。
可能是你的帳號不允許從遠程登陸,只能在localhost。
這個時候只要在localhost的那台電腦,登入mysql後,更改 "mysql" 資料庫裡的 "user" 表裡的 "host" 項,從"localhost"改稱"%"
mysql> use mysql;
mysql> update user set host = '%' where user = 'root';
mysql> select host, user from user;
2、授權法。例如,你想myuser使用mypassword從任何主機串連到mysql伺服器的話。
GRANT ALL PRIVILEGES ON *.* TO 'loginName'@'%'IDENTIFIED BY 'Password' WITH GRANT OPTION;
如果你想允許使用者loginName從ip為192.168.1.6的主機串連到mysql伺服器,並使用Password作為密碼
GRANT ALL PRIVILEGES ON *.* TO 'loginName'@'192.168.1.6'IDENTIFIED BY 'Password' WITH GRANT OPTION;
我用的第一個方法,剛開始發現不行,在網上查了一下,少執行一個語句 mysql>FLUSH RIVILEGES
使修改生效,就可以了。
但我這裡執行FLUSH RIVILEGES有錯誤?
3、另外一種方法:
在安裝mysql的機器上運行:
1、d:\mysql\bin\>mysql -h localhost -u root
//這樣應該可以進入MySQL伺服器
2、mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION
//賦予任何主機訪問資料的許可權
3、mysql>FLUSH PRIVILEGES
//修改生效
4、mysql>EXIT
//退出MySQL伺服器
這樣就可以在其它任何的主機上以root身份登入啦。
詳細出處參考:http://www.jb51.net/article/13875.htm
在用戶端的Navicat 8 from mysql 這個工具中,添加一個新的串連,輸入相應的使用者名稱、密碼、遠端地址,OK了。
此文只適合像我這種火星人學習……