centos7 開啓mysql5.7遠程連接授權並連接

centos7 開啓mysql5.7遠程連接授權並連接

Aledsan 2020-04-13 11:48:46 302 收藏
展開
在centos7安裝了mysql數據庫,卻發現只能本地連接,那麼如何來實現遠程連接呢, 下面就講述如何開啓mysql5.7遠程連接授權並遠程連接。

一、遠程連接授權
如果要用第三方工具,如Navicat啓用遠程訪問,是要授權的,因爲mysql默認禁止遠程訪問
這裏我們有兩種方法,一種是下面這種sql語句授權

GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘xxx’ WITH GRANT OPTION;
1
其中%是指所有的ip地址,當然你可以設定具體的ip地址,把賬戶綁定在某個ip地址下; 而xxx具體就是指用戶的密碼,注意,這裏是一個寫法格式,root ,%和xxx都是可以換的

還有一種就是如下
查看錶

show databases; -顯示數據庫
use mysql; -進入庫
1
2

用select host,user from user;命令發現root用戶的host是localhost,localhost 表示只能進行本地訪問,不能進行遠程連接

我們修改一些權限即可,把root用戶的host改爲%

update user set host = “%” where user = “root”;
1

最後再刷新一下權限就完成了,其實本質上跟第一種差不多,關鍵看你喜歡用哪種:

flush privileges;
1

弄完之後用Navicat測試連接,如果能連接上就是成功了,如若不能,那就可能是防火牆限制了。需要在防火牆裏面加開放數據庫端口的規則。所以我們還要多做一步:防火牆開放數據庫端口(默認3306,可以在/etc/my.cnf中修改)

二、防火牆開放數據庫端口
(如果防火牆沒開就不用多此一舉了)

1.查看目前防火牆,這是也是在root權限下執行的

firewall-cmd --list-all
1
可以看到這裏開放端口是空的,3306很明顯沒有開放

2.開放3306端口

firewall-cmd --permanent --add-port=3306/tcp
1
顯示成功

3.重啓防火牆
弄完之後我們需要重新啓動防火牆,避免一些不必要的錯誤

service firewalld restart
1

4.查看3306端口是否開放
重啓後我們檢查一下是否生效了

firewall-cmd --query-port=3306/tcp
1

可以再次查看現在防火牆firewall-cmd --list-all

5.最後再次測試是否可以遠程連接

————————————————
版權聲明:本文爲CSDN博主「Aledsan」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_43465312/article/details/105484627

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章