mysql出现ERROR1698(28000):Access denied for user root@localhost错误解决方法

该文章参考https://www.cnblogs.com/cpl9412290130/p/9583868.html

问题概述

我的系统是Ubuntu18.04,刚刚装好系统,就去装php的环境,安装到mysql的时候没让我设置密码,密码应该是为空的,可是无论如何也进不去,无奈之下,百度了一下解决方法,问题已解决

解决方法

打开Ubuntu的终端输入sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf进入到这个配置文件,然后在这个配置文件中的[mysqld]这一块中加入skip-grant-tables,加入这区话可以让你不用密码登录mysql,保存后退出,
然后输入sudo service mysql start
在这里插入图片描述
然后就可以输入mysql -uroot -p到输入密码的环节时候直接回车就好了
进入了mysql的管理终端了后,输入use mysql;注意:别忘记这最后的一个分号,很重要,我吃了很多次亏
在这里插入图片描述
后面输入update user set authentication_string=password("你的密码") where user="root"; 然后敲回车,flush privileges; 然后敲回车
最后再去吧刚才加进去的那串代码删了重启mysql服务就好了,
如果还是报错,请看下面:
继续把刚才删掉的那串代码重新加上去,重新登录进去,输入use mysql;后再输入select user,plugin from user;注意看root这一列,如果有下是出现下列这种情况就继续看下去,否则就没办法了

mysql> select user,plugin from user;
+------------------+-----------------------+
| user             | plugin                |
+------------------+-----------------------+
| root             | auth_socket           |
| mysql.session    | mysql_native_password |
| mysql.sys        | mysql_native_password |
| debian-sys-maint | mysql_native_password |
| phpmyadmin       | mysql_native_password |
+------------------+-----------------------+
5 rows in set (0.00 sec)

接着输入update user set authentication_string=password('密码'),plugin='mysql_native_password' where user='root';后,再次输入select user,plugin from user;注意看root这一列,后如果出现下列情况就成功了

mysql> select user,plugin from user;
+------------------+-----------------------+
| user             | plugin                |
+------------------+-----------------------+
| root             | mysql_native_password |
| mysql.session    | mysql_native_password |
| mysql.sys        | mysql_native_password |
| debian-sys-maint | mysql_native_password |
| phpmyadmin       | mysql_native_password |
+------------------+-----------------------+
5 rows in set (0.00 sec)

后再次输入flush privileges;出现下列一句退出就成功了,现在再去把刚才那串代码注释了,重启mysql服务器就好了

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JoaKim Starr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值