Mysql/Mariadb本地不可以登录,远程可以登录问题的解决

参考文章:https://blog.csdn.net/yjw123456/article/details/94330300

引言
今天碰到了一个奇怪的问题,前几天设置了MariaDB root用户远程访问权限并修改了密码。今天服务器报Access denied for user 'root'@'localhost' (using password: YES)

解决方法
MariaDB版本为: mysql Ver 15.1 Distrib 10.1.37-MariaDB

在确定密码没问题(通过远程可以成功登录,本地服务器通过mysql -u root -p也可以登录)后,还是报这个问题:

首先执行下查询:

SELECT plugin from user where User = 'root';
1
如果看到结果不空,为mysql_native_password,那么就执行:

update user set plugin='' where User='root';
flush privileges;
1
2
刷新页面,数据成功出来了!

MySQL修改密码
附上忘记密码后修改密码步骤:

$ mysqld --skip-grant-tables
$ mysql -u root mysql
$mysql> UPDATE user SET Password=PASSWORD('my_password') where USER='root';
$mysql> FLUSH PRIVILEGES;
1
2
3
4
如果碰到unknown field Password error则执行:
update user set authentication_string=password('my_password') where user='root';

最后重启mysql服务

$ /etc/init.d/mysql restart
————————————————
 

你可能感兴趣的:(Mysql/Mariadb本地不可以登录,远程可以登录问题的解决)