mysql ssh错误_通过SSH隧道连接时,MySQL访问被拒绝错误
幾個月來,我一直通過SSH隧道連接到我們本地測試服務器上運行的
MySQL實例,沒有任何問題.突然之間,沒有我能想到的任何變化,服務器已經(jīng)開始拒絕來自Sequel Pro的登錄嘗試,但錯誤:
Unable to connect to host 127.0.0.1 because access was denied.
Double-check your username and password and ensure that access from your current location is permitted.
MySQL said: Access denied for user ‘root’@’localhost’ (using password: YES)
當通過SSH直接連接到服務器時,我可以從終端登錄,而不是通過SSH隧道.這個問題并不是Sequel Pro特有的,也不僅僅是我自己,我通過My??SQL Workbench連接時遇到同樣的錯誤,辦公室里的其他人也是如此.為了理智,我用mysqladmin重置了密碼,這絕對不是問題.
當我開始研究它時,我注意到錯誤是將服務器報告為“l(fā)ocalhost”,而不是我在Sequel Pro中輸入的“127.0.0.1”.一位朋友建議可能只是錯誤處理錯誤,但鑒于MySQL中的localhost和127.0.0.1之間存在顯著差異,這似乎很奇怪.
為了解決隧道問題,我授予了對root @%的訪問權(quán)限,以便我可以直接連接.這在很大程度上起作用,我可以查看表數(shù)據(jù),創(chuàng)建新數(shù)據(jù)庫等.唯一的問題是當我來創(chuàng)建用戶時我得到錯誤:
Access denied for user ‘root’@’%’ (using password: YES)
奇怪的是用戶實際上是創(chuàng)建的,我認為這僅僅是授權(quán)問題.但是,從終端我再次以root身份登錄時可以做任何事情.
任何人都可以幫助闡明為什么隧道連接和(可能)授權(quán)命令正在接收訪問被拒絕錯誤?
作為參考,MySQ是版本5.6.16,主要是默認設置,通過Homebrew在MAC OS X Server機器上安裝.
更新
以下是root當前被授予訪問權(quán)限的主機列表:
mysql> select host,user from mysql.user where user='root';
+----------------+------+
| host | user |
+----------------+------+
| % | root |
| 127.0.0.1 | root |
| ::1 | root |
| localhost | root |
+----------------+------+
4 rows in set (0.00 sec)
據(jù)我了解,第一行(“%”)應該真正使其他行冗余嗎?
更新2
修正了撥款問題; root @%用戶最后沒有被授予額外的with grant選項的所有權(quán)限,所以除了grant之外它可以做所有事情.仍然很想知道為什么SSH隧道被拒絕了.
總結(jié)
以上是生活随笔為你收集整理的mysql ssh错误_通过SSH隧道连接时,MySQL访问被拒绝错误的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机雕刻教学设计,教学设计季花的雕刻方
- 下一篇: eclipse把tomcant用到一个项