1045-Access denied for user 'root'@'localhost'解决方法
下文中红色字是重点,蓝色字是解释说明或者提醒!!!
由于安装了数据库之后好长一段时间内都没用,再上课使用的时候就报了以下这个错误:
然后就各种百度各种找办法,具体因为啥不是特别懂,但是我最后连接成功了这是主要的,现在我来告诉你我是咋整的~
百度了很多,大家的观点很一致,都是说:“出现这个问题的原因之一是权限的问题,也就是说你的电脑可能没有权限访问mysql数据库。讲道理这种情况其实基本上不该遇到,因为我们在安装mysql之后,root其实是有最高权限的,而且很少会有人去修改root的权限。这个问题的解决方法就是授权。”咱们姑且就这么理解,但是我弄完之后发现我的问题是:我的root密码是空的,但是我连接不了,也有可能是时间长不用失效了,我给root设置了一个密码就连接成功了,我是这样设置密码的:
1、找到配置文件my.ini:
找到安装路径 MySQL Server 5.7.14(个人MySQL版本,可能跟我的不一致)下的配置文件my.ini(Windows系统中这个文件叫my.ini,linux系统中这个文件叫my.cnf),这个是在安装目录下,如果你不知道在哪里,当然百度的那些找它的方法我没看明白,是用运行-->cmd的方法,然后查找存放这个文件的位置,如果你想用这种方法的话可以再去百度,我嫌麻烦,在这里就不说了哈,嘿嘿嘿,我反正是直接在我的电脑里,右上角直接搜索my.ini,稍微等一会就找到了,吼吼吼,简单吧~
2、添加语句:
打开 my.ini 找到 [mysqld] 然后在下面加上这句: skip_grant_tables (意思好像是 启动MySQL服务的时候跳过权限表认证 )
3、然后启动服务 :
开始 --> cmd --> net start mysql (启动MySQL服务)---> mysql 回车 ( 如果成功,将出现MySQL提示符)-->输入use mysql; (连接权限数据库)
如果不成功的话,他就啥也弹不出来,就比如我,然后我就要去服务那里手动打开,在电脑下面搜索栏处输入“服务”-->找到“MySQL”-->右击“启动”,好了可以放一边了,接下来我们开始改密码。
4、修改密码:
- 开始——运行——输入“cmd”——点击确定(或者 窗口键+R——cmd——回车),打开命令提示符界面。
- 这里要进入到你在第一步找到的那个**\**\mysql\mysql5.7.14\bin文件夹下(路径前面不一样,后面是一样的)
- 然后输入:mysql -hlocalhost -uroot -p(有的让输入这个:mysql -u root -p,我不知道这俩啥区别,前面的不行就输入后面的)
- 然后让你输入密码,我的是没有设置密码,直接回车就能进去,如果你没改过的话,应该也是这样,然后显示Welcome......这样就成功进入了mysql数据库。
- 直接输入一句代码修改一下密码就可以用了。比如我的电脑的ip地址是:172.0.0.1,我的root密码是:123456,那么我就可以将授权的语句改成:
grant all privileges on *.* to 'root'@'172.0.0.1' identified by '123456';
如果你是本地登录的,那么:
grant all privileges on *.* to 'root'@'localhost' identified by '123456';
当然你也可以直接改成这样:
grant all privileges on *.* to 'root'@'%' identified by '123456';
就可以给所有ip都设定root登陆了。
如果授权成功,会有Query OK的提示。如下总图:
- 然后输入:
flush privileges;
这个是刷新授权的意思,如果没有这句话,授权可能无法立刻生效。
exit;
这个是退出的意思。
授权完成以后,你可以再尝试一下登陆,我就是这样登陆上的,成功了哦~~~
5、另一种问题,wamp问题
还有一种可能就是之前可以使用,然后关机之后就突然不能使用了,也是报1045的错误,我关机,重启,重启服务,关闭防火墙都不管用,但是!!!我在打开wamp之后再刷新一下mysql数据库就又可以使用了,希望对你们有用哦~
如果客官看完觉得有用的话,
可以支持小妹给小妹打赏哦~
小妹会更有动力出解决问题的文章尼~~~
爱你呦~
2020-05-25写
欢迎点赞评论哦~~~
作者:吃啥鸭
出处:http://www.cnblogs.com/chishaya/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。