[数据库]mysql MySQL报错-Access denied for user 'root'@'localhost' (using password: NO)

☆樱花仙子☆ 提交于 2019-11-28 07:21:08

[数据库]mysql配置连接拒绝无权限解决方法

https://www.cnblogs.com/bjlhx/p/11395992.html

1、新安装的mysql报错

MySQL报错-Access denied for user 'root'@'localhost' (using password: NO)

解决方案

1、先停掉原来的服务

/etc/init.d/mysqld stop

2、使用安全模式登陆,跳过密码验证

mysqld_safe --user=mysql --skip-grant-tables --skip-networking&

或者上述两步可以使用如下操作

  在mysql的配置文件内加入:

  vim  /etc/my.cnf

  skip-grant-tables

  保存并重启mysql服务

3、进入mysql,修改密码:

mysql> use mysql;

mysql> update user set password=password("你的新密码") where user="root";

mysql> flush privileges;

mysql> quit

到此root账户就重置了密码,

  注意:如果使用配置文件了,需要删除etc/my.cnf中,刚添加的那行内容,重启mysql就好了

更新密码出错

  mysql> update user set password=password("你的新密码") where user="root";

  报错:ERROR 1054 (42S22): Unknown column 'password' in 'field list'

  解决措施如下:

  mysql>desc user;

  发现在Field列中没有password,此时我们需要这样重置密码:

  mysql>update user set authentication_string=password('123456') where user='root';

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!