Linux中無(wú)法遠(yuǎn)程連接數(shù)據(jù)庫(kù)問(wèn)題的解決方法
起因
今天在ubuntu16.04環(huán)境下通過(guò)mysql workbench訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)時(shí),發(fā)現(xiàn)無(wú)法連接問(wèn)題,解決思路及方法記錄如下,不足之處,請(qǐng)多指教。
問(wèn)題
通過(guò)workbench輸入密碼訪問(wèn)時(shí)報(bào)這個(gè)錯(cuò):
Your connection attempt failed for user 'root' from your host to server at 118.89.153.162:3306: Access denied for user 'root'@'118.89.153.162' (using password: YES)
思路
- 網(wǎng)絡(luò)問(wèn)題,更換網(wǎng)絡(luò)之后重啟workbench和MySQL服務(wù)進(jìn)行連接,依舊是這個(gè)錯(cuò)。
- 密碼錯(cuò)誤,通過(guò)ssh遠(yuǎn)程登錄服務(wù)器查看遠(yuǎn)程mysql的password,發(fā)現(xiàn)所填密碼正確。
- 遠(yuǎn)程mysql沒(méi)有訪問(wèn)權(quán)限,一般有兩種方法:改表法和授權(quán)法 :
授權(quán)法:
第一步:嘗試打開(kāi)/etc/mysql/my.cnf配置文件,若文件不存在或者內(nèi)容為空,則打開(kāi)下面的文件路徑:
sudo vim /etc/mysql/my.cnf //或: sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
第二步:在文件中查找下面一行,如果該行前沒(méi)有加#,可在該行前添加#進(jìn)行注釋?zhuān)4嫱顺觥?/p>
bind-address = 127.0.0.1
改表法:
mysql>use mysql; mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //賦予任何主機(jī)訪問(wèn)以及修改所有數(shù)據(jù)的權(quán)限 //例如,你想root用戶(hù)使用root從任何主機(jī)連接到mysql服務(wù)器的話(huà)。 //GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; //如果你想允許用戶(hù)root從ip為192.168.1.124的主機(jī)連接到mysql服務(wù)器,并使用123456作為密碼 //GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.124'IDENTIFIED BY '123456' WITH GRANT OPTION; mysql>flush privileges //權(quán)限刷新,使修改立即生效 sudo /etc/init.d/mysql restart //或: service mysql restart 重啟mysql服務(wù)
兩種方法我嘗試了一下,錯(cuò)誤類(lèi)型變成了:
Can't connect to MySQL server on ...
看到這個(gè)錯(cuò)誤我想到了遠(yuǎn)程服務(wù)器防火墻的原因,于是我有了下面的思路:
4. 遠(yuǎn)程ubuntu服務(wù)器的防火墻原因?qū)е聼o(wú)法本地訪問(wèn)遠(yuǎn)程的3306端口
sudo ufw disable //關(guān)閉防火墻,該命令需在root權(quán)限下執(zhí)行,慎用
再次通過(guò)workbench連接遠(yuǎn)程mysql,連接成功。
原因
我的本地?zé)o法連接遠(yuǎn)程是因?yàn)檫h(yuǎn)程ubuntu服務(wù)器防火墻默認(rèn)禁止外部訪問(wèn)3306端口。
做法
sudo ufw enable //開(kāi)啟防火墻 sudo ufw allow 3306 //允許外部訪問(wèn)3306端口
總結(jié)
1. 一般的無(wú)法連接遠(yuǎn)程mysql問(wèn)題是由上面四個(gè)愿意導(dǎo)致的,這里不做贅述。
2. 在遇到一個(gè)問(wèn)題時(shí)首先要做的不是立刻找做法解決這個(gè)問(wèn)題,而應(yīng)該是思考為什么會(huì)出現(xiàn)這個(gè)問(wèn)題,產(chǎn)生這個(gè)問(wèn)題的原因,做到對(duì)癥下藥。
3. 自己還有很多不足,戒驕戒躁才能進(jìn)步。
附贈(zèng)
Ubuntu常用ufw防火墻命令
//安裝方法 sudo apt-get install ufw //啟用 sudo ufw enable sudo ufw default deny //開(kāi)啟了防火墻并隨系統(tǒng)啟動(dòng)同時(shí)關(guān)閉所有外部對(duì)本機(jī)的訪問(wèn),本機(jī)訪問(wèn)外部正常。 //關(guān)閉 sudo ufw disable //查看防火墻狀態(tài) sudo ufw status //開(kāi)啟/禁用相應(yīng)端口或服務(wù)舉例 sudo ufw allow 3306 //允許外部訪問(wèn)3306端口 sudo ufw delete allow 3306 禁止外部訪問(wèn)3306端口 sudo ufw allow from 118.89.153.162 //允許此IP訪問(wèn)所有的本機(jī)端口 sudo ufw deny smtp //禁止外部訪問(wèn)smtp服務(wù) sudo ufw delete allow smtp //刪除上面建立的某條規(guī)則 sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 22 //要拒絕所有的TCP流量從10.0.0.0/8 到192.168.0.1地址的22端口 //推薦使用 sudo apt-get install ufw sudo ufw enable sudo ufw default deny
參考文章:http://www.dbjr.com.cn/article/138876.htm
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
- Linux系統(tǒng)下virtuoso數(shù)據(jù)庫(kù)安裝與使用詳解
- Linux下安裝python3.6和第三方庫(kù)的教程詳解
- linux下安裝boost庫(kù)的完整步驟記錄
- linux實(shí)現(xiàn)定時(shí)備份mysql數(shù)據(jù)庫(kù)的簡(jiǎn)單方法
- python實(shí)現(xiàn)linux下抓包并存庫(kù)功能
- linux每天定時(shí)備份數(shù)據(jù)庫(kù)并刪除十天前數(shù)據(jù)詳細(xì)步驟
- Linux下動(dòng)態(tài)鏈接庫(kù)加載路徑及搜索路徑問(wèn)題
- linux下導(dǎo)入、導(dǎo)出mysql數(shù)據(jù)庫(kù)命令的實(shí)現(xiàn)方法
- linux系統(tǒng)下安裝配置解壓版的MySQL數(shù)據(jù)庫(kù)圖解
- Linux環(huán)境下使用glog日志庫(kù)的方法
相關(guān)文章
Apache啟用GZIP壓縮網(wǎng)頁(yè)傳輸方法
上一篇文章我們已經(jīng)介紹了Apache啟用GZIP壓縮網(wǎng)頁(yè)的方法,這里又發(fā)現(xiàn)了一篇好文章,特分享給大家2013-06-06
Centos7.0安裝ceph(JEWEL)及以上版本的實(shí)例解析
這篇文章主要介紹了Centos7.0安裝ceph(JEWEL)及以上版本的實(shí)例解析,需要的朋友可以參考下2018-02-02
從Centos7升級(jí)到Centos8的教程(圖文詳解)
這篇文章主要介紹了從Centos7升級(jí)到Centos8的教程,在升級(jí)之前需要配置備份,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-11-11
詳解Linux 主機(jī)網(wǎng)絡(luò)接入配置
這篇文章主要介紹了詳解Linux 主機(jī)網(wǎng)絡(luò)接入配置的相關(guān)資料,希望通過(guò)本文能幫助到大家,讓大家實(shí)現(xiàn)網(wǎng)絡(luò)接入配置的功能,需要的朋友可以參考下2017-10-10
Linux實(shí)現(xiàn)自動(dòng)掛載autofs的方法詳解
這篇文章主要介紹了Linux實(shí)現(xiàn)自動(dòng)掛載autofs的相關(guān)資料。autofs 服務(wù)將實(shí)現(xiàn)自動(dòng)掛載外圍設(shè)備,NFS共享目錄等,并在空閑5分鐘后后自動(dòng)卸載,需要的可以參考一下2022-10-10
Linux進(jìn)程管理之如何創(chuàng)建和銷(xiāo)毀進(jìn)程
這篇文章主要介紹了Linux進(jìn)程管理之如何創(chuàng)建和銷(xiāo)毀進(jìn)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
解決xampp自啟動(dòng)和mysql.sock問(wèn)題
Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’2010-10-10

