mysql 資料庫預設的連接配接隻能在本機連接配接,遠端連接配接必須授權。
- 代碼:
-
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允許使用者myuser從ip為192.168.1.6的主機連接配接到mysql伺服器,并使用 mypassword作為密碼
- 代碼:
-
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION
這樣資料庫就允許遠端連接配接了。
但在用MyEclipse的db browser 連接配接時,還是提示無法連接配接。我就懷疑是不是我的mysql驅動包有問題。
剛開始用的驅動包是mysql-connector-java-3.1.13-bin.jar ,懷疑版本太低,結果又DOWN了一個新的mysql-connector-java-5.1.7-bin.jar。繼續連接配接還是不行。
頭都想破了,網上資料查了一堆也沒發現相關的解決方案,于是抱着試試看的心态去檢視mysql的配置檔案
vi /etc/mysql/my.cnf
結果發現有這麼幾行
- 代碼:
-
bind-address = 127.0.0.1 # # * Fine Tuning # key_buffer = 16M max_allowed_packet = 16M thread_stack = 128K thread_cache_size = 8
大家看到了吧bind-address = 127.0.0.1 這一行就把連接配接位址給限制死了,隻能本機連接配接。于是我把這行注釋掉\
- 代碼:
-
#bind-address = 127.0.0.1 # # * Fine Tuning #
重新啟動mysql
- 代碼:
-
sudo /etc/init.d/mysql restart
轉載:http://apps.hi.baidu.com/share/detail/5475421