Win7环境下mysql报错1045:Access denied for user root@localhost错误解决方法

时间:2023-05-17 12:51:26

产生场景:在涉及到连接数据库操作的时候,会报1045:Access denied for user root@localhost。

     比如:本地建立的数据库连接不上,在IDEA等开发工具中使用反向生成.xml,.java文件时,无法从插件直接执行。

解决方法:一共五步

     一:停止MySQL服务

       在mysql的安装目录,输入命令net stop mysql

       二:跳过验证

       在my.ini里面68行(随便选位置)添加    skip_grant_tables 然后保存关闭

     三:重启mysql并登陆mysql

       命令:net start mysql(启动)

          mysql -uroot -pmysql(登陆)

       四:修改密码

       命令:use mysql

          update MySQL.user set authentication_string=password('PASSWORD') where user='root';   注:命令中的PASSWORD换成自己需要设置的密码

          flush privileges; 刷新配置

          exit ;(退出服务)

     五:打开my.ini文件,删除刚才添加的最后一行的内容,保存并关闭文件。然后在命令行用net stop mysql和net start mysql重启mysql。然后在命令行窗口,用刚才设置的密码登录mysql。登录成功,问题解决!

       命令:mysql -uroot -p