錯誤訊息如下:
#1698 - Access denied for user 'root'@'localhost'
mysqli_real_connect(): (HY000/1698): Access denied for user 'root '@'localhost'
原先在Ubnutu建好MariaDB,也設定好root的密碼。想透過phpmyadmin連接資料庫,卻老是得到上面錯誤訊息,同時使用Sequel Pro進行連接,也是失敗。網路提到的解決方案,多半是要去重新設定root權限與不限制IP登入。因此都沒有解決問題。
後來思考是否是防火牆設定問題?最後在/etc/mysql/mariadb.conf.d/50-servier.cnf (Ubuntu)
bind-address = 127.0.0.1
將此段用#註解掉,即可使用Sequel Pro連接。
(mysql 預設只讓本地端 localhost, 127.0.0.1)連線)
但是phpmyadmin仍然無法使用root登入,此時思考應該安全性的問題。因此參考國外網友建議的方式,新增一個pmauser使用者,並且給予最大管理者權限。
新增使用者
CREATE USER 'pmauser'@'%' IDENTIFIED BY '輸入自訂密碼';
給予最大管理權限
GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%' WITH GRANT OPTION;
後續果然就可以使用。可喜可賀。
可參考