MySql 出现ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES).问题解决方案

在登入mysql时,当输入mysql -uroot -p 回车之后。   然后输入密码,但是却没有这正常的登入MySql ,却出现ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES).

在网上搜索了一些方法,有些方法是没有效果的。

首先,我安装的mysql 是5.7.11 的解压版数据库。之前网上有人说先修改安装目录下的my.ini文件即,编辑my.ini文件,将skip-grant-tables添加在[mysqld]下然后再进行一系列的修改就可以重新更改,成功登入mysql。

但是注意在我所用的版本中,在mysql解压文件文件下只有my-defoult.ini文件。并没有my.ini文件。于是我就直接将上面的skip-grant-tables添加进[mysqld]下,但是却并不能成功解决问题。

最终我将my-defoult.ini文件改成my.ini文件就成功生效了,这一点至今都还没有明白。所以先暂时解决成功登入的问题。以后的博文中探究为什么会出现这个的问题。

下面就讲解如何解决这个问题吧:

1、将mysql解压路径下的my.ini文件进行编辑(如果你的文件夹下是my-defoult.ini,,则将它改成my.ini),在[mysqld]项下添加skip-grant-tables 这个是mysql的启动参数,这里也先讲解一下这个参数吧:

skip-grant-tables : 就是在启动mysql的时候不启动(忽略)grant-table(授权表),授权表就是控制每个用户对数据库进行操作的行为,比如限制用户访问整个数据库,限制用户访问数据库中特定的表,或者禁止访问呢特定表中的特定列。所以这个参数的用处就是当忘记密码的时候用了。

 

2、关闭mysql服务,然后再重新启动服务。


 

3、然后再 mysl -uroot -p 回车   此时是不用密码就可以登入成功的。

4、然后选择数据库 use mysql

5、设置新的密码

注意新密码设置在( ) 里面。

6、刷新数据库操作。不然是不会生效的。

 
7、修改之后,要将这个my.ini文件中之前添加的skip-grant-tables给去除,就行了。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值