【MySQL学习】Unknown column 'PASSWORD'|Access denied for user 'root'@'localhost'

配置好MySQL后启动,登录root用户结果提示Access denied for user 'root'@'localhost'

查找了一下资料,是因为root临时密码为空或者密码错误,好像说MySQL5.6以后root默认密码不是空所以无法登录,反正各种奇怪的原因囧。弄了很久找到了处理办法。

首先使用命令mysqld --skip-grant-tables,这条命令是作用了跳过认证直接进入MySQL,输入后会出现什么都没有的情况

此时以管理员权限启动另一个cmd,转到MySQL的bin目录下,输入mysql,发现可以进入了

然后我们尝试修改root密码,会出现错误提示

网上搜索的时候发现这一步竟然可以正常运行,百思不得其解,查阅后发现

匿名用户不能修改密码,所以在这里我们新建一个root用户就好了,使用命令GRANT ALL ON *.* to 'root'@'localhost' IDENTIFIED BY 'root'(此处填写密码) with grant option;注意结尾分号

随后刷新权限列表flush privileges;

然后即可使用刚刚建立的账户登录

原文地址:https://www.cnblogs.com/shvier/p/4966489.html