1. 程式人生 > 資料庫 >Navicat遠端連線阿里雲上資料庫時,出現錯誤:1045-Access denied for user 'root'@'localhost'解決方法

Navicat遠端連線阿里雲上資料庫時,出現錯誤:1045-Access denied for user 'root'@'localhost'解決方法

在之前的部落格中介紹過在阿里雲上部署mariadb資料庫,並通過Navicat實現遠端連線資料庫的方法。好多天過去了,一直沒有管理資料庫,今天通過Navicat登入時突然報錯:

å¨è¿éæå¥å¾çæè¿°

我又通過xshell登入阿里雲,通過命令列的方式登入資料庫,發現一切正常,但是用Navicat連線就報錯,這就很奇怪了。於是就在網上找啊找,突然發現一個方法解決了我的問題,因此在這裡記錄一下:

先扯個淡
其實有些人看到這個問題,可能一上來就感覺是不是密碼輸入錯誤了。因為本人之前一直也沒動過這個資料庫,既然曾經連線好使過,那密碼確實不應該出錯。括號中(using password:?)?處如果輸入密碼了,就顯示YES,如果啥也沒輸入,就顯示NO。

另外網上還說,還有可能是埠衝突了。如果專案多,佔用了3306埠的話就自己kill一下程序或者修改一下埠吧。

我的解決辦法
進入到mariadb的安裝目錄下,我的是/etc/mysql,進入之後,檔案目錄如圖所示:

å¨è¿éæå¥å¾çæè¿°
上述安裝目錄中,有兩個配置檔案需要重點關注一下:my.cnf和debian.cnf

在xshell命令列中cd到這個目錄下,並分別用vim開啟上述兩個檔案:

1.my.cnf

å¨è¿éæå¥å¾çæè¿°

在[mysqld]下新增:skip-grant-tables(如果沒有mysqld的話就自己照著格式寫一個)

å¨è¿éæå¥å¾çæè¿°
2.debian.cnf

å¨è¿éæå¥å¾çæè¿°
同樣,在[mysqld]下新增:skip-grant-tables(如果沒有mysqld的話就自己照著格式寫一個)

å¨è¿éæå¥å¾çæè¿°
修改完上面兩個檔案之後,重啟資料庫 service mysql restart

這時候再用Navicat連線一下就好使了。又可以愉快的幹活了~

最後
其實我認為上面兩個應該是修改一個就可以,但是具體是修改哪個我也不知道,以防萬一,就都改了吧。
如果找不到自己mariadb或者mysql安裝到那個檔案目錄下了,用 whereis mysql 語句尋找(mariadb和mysql都是查詢mysql)

然後å¨è¿éæå¥å¾çæè¿°挨個點進去找就行了。
最後別忘了重啟資料庫。
————————————————
版權宣告:本文為CSDN博主「酷酷的橙007」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連結及本宣告。

原文連結:https://blog.csdn.net/xiecheng1995/article/details/93203119