最近在項目搭建過程中遇到一問題,有關虛擬機linux端mysql數據庫無法遠程訪問,通過查閱相關數據庫資料問題解決,下面把具體的解決辦法分享給大家,有需要的朋友可以參考下
對于解決虛擬機linux端mysql數據庫無法遠程訪問的辦法一種,以下內容我給大家整理了兩種解決方案,具體內容如下:
解決方法一:
1、 在控制臺執行 mysql -u root -p mysql,CentOS系統提示輸入數據庫root用戶的密碼,輸入完成后即進入mysql控制臺
2、 在mysql控制臺執行 GRANT ALL PRIVILEGES ON *.* TO'root'@'%'IDENTIFIED BY 'MyPassword' WITH GRANT OPTION; FLUSH PRIVILEGES;
3、 在mysql控制臺執行命令中的'root'@'%'可以這樣理解: root是用戶名,%是主機名或IP地址,這里的%代表任意主機或IP地址,你也可替換成任意其它用戶名或指定唯一的IP地址;'MyPassword'是給授權用戶指定的登錄數據庫的密碼;另外需要說明一點的是我這里的都是授權所有權限,可以指定部分權
4、 切換到root用戶 打開iptables的配置文件:vi /etc/sysconfig/iptables
添加紅色字體
- # Firewall configuration written by system-config-firewall
- # Manual customization of this file is not recommended.
- *filter
- :INPUT ACCEPT [0:0]
- :FORWARD ACCEPT [0:0]
- :OUTPUT ACCEPT [0:0]
- -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- -A INPUT -p icmp -j ACCEPT
- -A INPUT -i lo -j ACCEPT
- -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
- -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
- -A INPUT -j REJECT --reject-with icmp-host-prohibited
- -A FORWARD -j REJECT --reject-with icmp-host-prohibited
- COMMIT
iptables:service iptables restart
全部修改完之后重啟
iptables -L 這樣
可以驗證一下是否規則都已經生效:,
CentOS
我們就完成了防火墻的設置修改。
在遠程:mysql -h 192.168.16.128 -u root2 -p 輸入密碼 root2 成功~
解決方法二:
具體內容請看下面代碼:
- mysql -uroot -p
- Enter password:
- mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'sy31214' WITH GRANT OPTION;
- mysql>FLUSH PRIVILEGES;
以上所述就是本文的全部內容,對于虛擬機linux端mysql數據庫無法遠程訪問的解決辦法還有好多種,歡迎各位大俠多多分享自己的解決方案,本文寫的不好,望多多提出批評建議。
新聞熱點
疑難解答