Mysql
為什麼在使用sudo時輸入錯誤的密碼也能使用mysql?
如果我嘗試使用 mysql 登錄
mysql -u root -p
並輸入錯誤的密碼,則會收到“拒絕訪問”。但是,如果我使用
sudo mysql -u root -p
並輸入了錯誤的 mysql 密碼,那麼我就可以訪問。版本:mysql Ver 15.1 Distrib 10.3.25-MariaDB,用於 debian-linux-gnu (x86_64) 使用 readline 5.2
這可能是由於root使用者使用了
unix_socket
身份驗證的方法。使用這種方法沒有使用密碼,只有與數據庫使用者匹配的作業系統使用者才能登錄。所以只有root
作業系統使用者才能以root
數據庫使用者身份登錄。儘管它在命令行上接受密碼,但它被忽略了。有關更多詳細資訊,請參閱MariaDB 知識庫,包括(如果您真的想要/需要)如何更改為密碼身份驗證。
如果您這樣做
use mysql;
,select user, plugin from user;
您可以查看為哪些使用者配置了哪些身份驗證外掛。