Ubuntu下MySQL报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

在Ubuntu下

想要登录mysql数据库

root@JD:~# mysql -uroot -p

报错

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

导致登录数据库不成功

打开文件

vi /etc/mysql/mysql.conf.d/mysqld.cnf

找到[mysqld]段,并加入一行“skip-grant-tables”

输入:wq保存并退出

重启数据库服务

service mysql restart

进入数据库,免密码

mysql -uroot -p

use mysql;
update mysql.user set authentication_string=password('新密码') where user='root'and Host ='localhost';
update user set plugin="mysql_native_password"; 
flush privileges;
quit;
vim /etc/mysql/mysql.conf.d/mysqld.cnf
# 英文输入环境下,敲 i 键,进入插入模式
#上下左右键移动光标,确保 bind-address = 127.0.0.1没有被注释掉
#英文输入环境下,敲Esc键,输入:wq 保存退出

回到 vim  /etc/mysql/mysql.conf.d/mysqld.cnf将刚才加入的那一行“skip-grant-tables”注释或删除掉。

再次重启mysql服务 service mysql restart,使用新的密码登陆,修改成功

mysql -u root -p 
#新密码
mysql>

问题解决

猜你喜欢

转载自www.cnblogs.com/xuepangzi/p/9214537.html