访问mysql出现Access denied for user 'root'@'的解决方法

时间:2021-10-24 15:38:14

1.关闭mysql的服务

  方法一:我的电脑右键-管理-服务和应用程序-服务,找到mysql,右键关闭

  方法二:cmd进入命令提示符,service mysqld stop(这个是网上的方法,我试了一下报错,还是选择了方法一)

2.修改mysql配置

  方法一:找到mysql安装目录下my.ini,搜索“[mysqld]”,在这行下面添加“skip-grant-tables”,保存关闭

  方法二:cmd进入命令提示符,mysqld_safe --skip-grant-tables(这个也是网上的方法,我用的方法一)

3.启动mysql服务

  方法一:我的电脑右键-管理-服务和应用程序-服务,找到mysql,右键启动

  方法二:cmd进入命令提示符,service mysqld start(这个是网上的方法,我试了一下报错,还是选择了方法一)

4.授权登录

  cmd进入命令提示符,mysql -u root -p,接着会让你输入Enter password:,直接按回车就好

5.修改密码

  在4.进行完以后,依次执行以下命令:

  update user set Password=PASSWORD('root') WHERE user='root'

  flush privileges

6.退出mysql命令

  \q

(需要注意的是,命令提示符似乎要在cd到mysql安装路径的bin目录下才可执行,这步没有验证,直接进目录执行的命令;还有说2.中方法一的skip-grant-tables在6.之后要再删掉,否则影响数据库的安全性。)