- 資訊首頁(yè) > 互聯(lián)網(wǎng) > 經(jīng)驗分享 >
- Linux服務(wù)器無(wú)法遠程連接數據庫問(wèn)題的解決方法
這篇文章主要給大家介紹了關(guān)于 LINUX中無(wú)法遠程連接 數據庫問(wèn)題的解決方法,文中通過(guò)示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價(jià)值,需要的朋友們下面隨著(zhù)小編來(lái)一起學(xué)習學(xué)習吧。
起因
今天在ubuntu16.04環(huán)境下通過(guò)mysql workbench訪(fǎng)問(wèn)遠程數據庫時(shí),發(fā)現無(wú)法連接問(wèn)題,解決思路及方法記錄如下,不足之處,請多指教。
問(wèn)題
通過(guò)workbench輸入密碼訪(fǎng)問(wèn)時(shí)報這個(gè)錯:
?1 | 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) |
思路
授權法:
第一步:嘗試打開(kāi)/etc/mysql/my.cnf配置文件,若文件不存在或者內容為空,則打開(kāi)下面的文件路徑:
?1 2 3 | sudo vim /etc/mysql/my .cnf // 或: sudo vim /etc/mysql/mysql .conf.d /mysqld .cnf |
第二步:在文件中查找下面一行,如果該行前沒(méi)有加#,可在該行前添加#進(jìn)行注釋?zhuān)4嫱顺觥?/p> ?
1 | bind-address = 127.0.0.1 |
改表法:
?1 2 3 4 5 6 7 8 | mysql>use mysql; mysql>GRANT ALL PRIVILEGES ON *.* TO 'root' @ '%' WITH GRANT OPTION // 賦予任何主機訪(fǎng)問(wèn)以及修改所有數據的權限 // 例如,你想root用戶(hù)使用root從任何主機連接到mysql服務(wù)器的話(huà)。 //GRANT ALL PRIVILEGES ON *.* TO 'root' @ '%' IDENTIFIED BY 'root' WITH GRANT OPTION; // 如果你想允許用戶(hù)root從ip為192.168.1.124的主機連接到mysql服務(wù)器,并使用123456作為密碼 //GRANT ALL PRIVILEGES ON *.* TO 'root' @ '192.168.1.124' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql>flush privileges // 權限刷新,使修改立即生效 sudo /etc/init .d /mysql restart // 或: service mysql restart 重啟mysql服務(wù) |
兩種方法我嘗試了一下,錯誤類(lèi)型變成了:
?1 | Can't connect to MySQL server on ... |
看到這個(gè)錯誤我想到了遠程服務(wù)器防火墻的原因,于是我有了下面的思路:
4. 遠程ubuntu服務(wù)器的防火墻原因導致無(wú)法本地訪(fǎng)問(wèn)遠程的3306端口
?1 | sudo ufw disable // 關(guān)閉防火墻,該命令需在root權限下執行,慎用 |
再次通過(guò)workbench連接遠程mysql,連接成功。
原因
我的本地無(wú)法連接遠程是因為遠程ubuntu服務(wù)器防火墻默認禁止外部訪(fǎng)問(wèn)3306端口。
做法
?1 2 | sudo ufw enable // 開(kāi)啟防火墻 sudo ufw allow 3306 // 允許外部訪(fǎng)問(wèn)3306端口 |
總結
1. 一般的無(wú)法連接遠程mysql問(wèn)題是由上面四個(gè)愿意導致的,這里不做贅述。
2. 在遇到一個(gè)問(wèn)題時(shí)首先要做的不是立刻找做法解決這個(gè)問(wèn)題,而應該是思考為什么會(huì )出現這個(gè)問(wèn)題,產(chǎn)生這個(gè)問(wèn)題的原因,做到對癥下藥。
3. 自己還有很多不足,戒驕戒躁才能進(jìn)步。
附贈
Ubuntu常用ufw防火墻命令
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | // 安裝方法 sudo apt-get install ufw // 啟用 sudo ufw enable sudo ufw default deny // 開(kāi)啟了防火墻并隨系統啟動(dòng)同時(shí)關(guān)閉所有外部對本機的訪(fǎng)問(wèn),本機訪(fǎng)問(wèn)外部正常。 // 關(guān)閉 sudo ufw disable // 查看防火墻狀態(tài) sudo ufw status // 開(kāi)啟/禁用相應端口或服務(wù)舉例 sudo ufw allow 3306 // 允許外部訪(fǎng)問(wèn)3306端口 sudo ufw delete allow 3306 禁止外部訪(fǎng)問(wèn)3306端口 sudo ufw allow from 118.89.153.162 // 允許此IP訪(fǎng)問(wèn)所有的本機端口 sudo ufw deny smtp // 禁止外部訪(fǎng)問(wèn)smtp服務(wù) sudo ufw delete allow smtp // 刪除上面建立的某條規則 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 |
總結
以上就是這篇文章的全部?jì)热萘?,希望本文的內容對大家的學(xué)習或者工作具有一定的參考學(xué)習價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對主機吧的支持。
發(fā)布者:水橋丶帕露西
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站