解决phpMyadmin登录出现"mysqli::real_connect(): (HY000/1698)"

今天我们在服务器中部署数据后,通过SHELLL登录ROOT账号用户的时候报错。

mysqli::real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'

这里我们的数据库默认root账号为空密码,出于安全考虑,默认只允许命令行登录。所以需要单独创建一个账号给phpMyAdmin使用:

sudo mysql -u root mysql
CREATE USER 'phpmyadmin '@'localhost' IDENTIFIED BY 'passwd';
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
flush privileges;

这将创建一个名为phpmyadmin的账号,注意将passwd换为你的密码,本地调试无需密码可以设为空。

尝试过的无效方法

修改mysql数据库user表中账号root的plugin值:

sudo mariadb -u root mysql
update user set plugin='' where User='root'

该值默认为:mysql_native_password

投上你的一票

原创文章,转载请注明出处:https://www.itbulu.com/phpmyadmin-realconnect.html

上一篇 2025年3月26日 16:50
下一篇 2025年4月7日 13:44

相关推荐