程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> 解決虛擬機linux端mysql數據庫無法遠程訪問

解決虛擬機linux端mysql數據庫無法遠程訪問

編輯:MySQL綜合教程

解決虛擬機linux端mysql數據庫無法遠程訪問   前天無聊在虛擬機中的CentOS上裝了一個mysql玩玩,突然想用jdbc連接用java操作下數據庫,可是怎麼都連接不上,具體情況為: 1.ping 192.168.16.128 成功 2.telnet 192.168.16.128 3306 拒絕訪問 在3306端口,可見CentOS防火牆屏蔽了3306端口 修改方式為: 切換到root用戶 打開iptables的配置文件:vi /etc/sysconfig/iptables 修改CentOS防火牆時注意:一定要給自己留好後路,留VNC一個管理端口和SSh的管理端口 內容如下: # Firewall configuration written by system-config-securitylevel # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT - [0:0] -A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT -A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT -A RH-Firewall-1-INPUT -p 50 -j ACCEPT -A RH-Firewall-1-INPUT -p 51 -j ACCEPT -A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT -A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited COMMIT 可見我的防火牆只開了22端口,因此我們添加3306端口 修改CentOS防火牆需要注意的是,你必須根據自己服務器的情況來修改這個文件。 舉例來說,如果你不希望開放80端口提供web服務,那麼應該相應的刪除這一行: -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT 我們添加 -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT 全部修改完之後重啟iptables:service iptables restart 你可以驗證一下是否規則都已經生效:iptables -L 這樣,我們就完成了CentOS防火牆的設置修改。   這時我們通過telnet 192.168.16.128 3306 成功   但此時我們仍不能訪問,因為mysql沒有授權遠程用戶 如,你想root2使用root2從任何主機連接到mysql服務器的話。  切換到mysql中   mysql>GRANT ALL PRIVILEGES ON *.* TO 'root2'@'%'IDENTIFIED BY 'root2' WITH GRANT OPTION;    或者如果你想允許用戶myuser從ip為192.168.1.6的主機連接到mysql服務器,並使用mypassword作為密碼    mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;    然後執行: mysql>FLUSH RIVILEGES; mysql>exit;   使修改生效.   這時我們在遠程:mysql -h 192.168.16.128 -u root2 -p 輸入密碼 root2 成功~ 用jdbc連接~成功~撒花~~~

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved