如果你在使用MySQL時想要開放遠程連接,但卻無法連接上,可能有以下幾種原因:
1. MySQL沒有開啟遠程連接功能
# 查看是否開啟了遠程連接功能 show variables like '%remote%'; # 如果沒有開啟,修改MySQL配置文件my.cnf(一般在/etc/mysql/my.cnf或/etc/my.cnf中),添加如下代碼 bind-address = 0.0.0.0 # 重啟MySQL服務 service mysql restart
2. 沒有為MySQL用戶開放遠程連接權(quán)限
# 查看是否具有遠程連接權(quán)限 select host, user from mysql.user; # 如果沒有,執(zhí)行以下語句 GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; # 刷新權(quán)限 FLUSH PRIVILEGES;
3. 防火墻阻擋了遠程連接請求
# 查看是否開啟了防火墻 service firewalld status # 如果是開啟狀態(tài),添加MySQL端口(默認為3306)到防火墻白名單中 firewall-cmd --zone=public --add-port=3306/tcp --permanent # 重載防火墻配置 firewall-cmd --reload
通過以上操作,就可以開放MySQL的遠程連接,讓外部可連接到MySQL。