问题前言
在Windows下安装MySQL服务时遇到的,使用MySQl绿色版进行安装的,安装完成后,连接到MySQL服务时输入命令 “ mysql -uroot -p ” ,因为时第一次登录,未设置密码,直接回车,就遇到了这个问题,错误信息如下:
“ ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO) ”
(IDEA有时候可能出现1045错误,结尾不是NO而是Yes,也可以尝试下)
一、windows+r 打开cmd,如下图:
(注意:以管理员身份启动cmd窗口)
解决办法:
1.先关闭Mysql服务,修改my.ini文件,再启动服务,输入命令:
1、net stop mysql 关闭命令
2、net start mysql 启动命令
2.找到mysql安装路径,打开my.ini,在[mysqlId]下添加:
skip-grant-tables
3.配置好my.ini,重启启动cmd,输入命令如下:
mysql -uroot -p
(在输入密码时,直接点击enter跳过)
4.现在我们就可以进行修改,命令如下:
(5.7.11以前)
update user set password=password("123456") where user="root";
(5.7.11 或者以后)
update user set authentication_string=password("123456") where user="root";
5.在cmd输入命令:![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/34cb903ffcfc139fa18b58f1860c2b4a.bmp)
6.设置密码成功后,再刷新数据库
(注意刷新是必须项)
flush privileges;
7.这样就完成啦,记得关闭删除跳过输入密码的的指令行。
再次关闭mysql,重启mysql
输入用户和密码重新登录。