1. 程式人生 > >關於用xampp連線非自帶的mysql出現phpmyadmin被拒絕訪問的解決方案

關於用xampp連線非自帶的mysql出現phpmyadmin被拒絕訪問的解決方案

關於用xampp連線非自帶的mysql出現phpmyadmin被拒絕訪問的解決方案

問題說明

xampp是很好的工具,集成了MySQL,Apache和phpmyadmin,非常方便。但是個人在使用過程中發現xampp自帶的MariaDB(是MySQL的一個分支)還是有些不完善,所以打算連線自己電腦上已經裝好的MySQL,無奈出現了訪問被拒絕的情況。

問題詳細說明

我電腦商裝的是MySQL 8.0.13,是很新的版本。下載xampp的時候沒有選安自帶的MySQL。我之前在命令列中設定了root使用者的密碼是123,在 conf.inc.php中修改了預設密碼,甚至在config.default.php裡也修改了(官方不推薦修改這個檔案),然而還是被拒絕。

解決

原因在於mysql 8.0之後的版本預設的加密方式換了,導致第三方的管理工具還沒有適配,所以大家可以仔細看看報的錯誤的英文解釋,有可能是這樣一句話:

mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client

翻譯過來就是伺服器採用的加密方式它不認識……
因為phpmyadmin是以root使用者登入的,所以可以先改一下root使用者的密碼的加密方式。
在命令列中以root身份登入,輸入

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY "你的密碼";

這樣就把root的密碼的加密方式改成了之前的方式。
不推薦大家又回去用老版本,這些不相容以後肯定會適配的,大可以耐心等待。