产生场景:在涉及到连接数据库操作的时候,会报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