46
忘记MySQL的root用户密码怎么办?

 网站程序或MySQL管理软件连接MySQL服务器时密码错误,会出现“1045 - Access denied for user'root'@'localhost'(using password:YES)”的错误提示。估计是root密码已经忘记了,要怎么找回root密码呢?基本的思路就是先修改配置让mysql不需要密码就能管理,然后做密码重置操作,最后修改回需要密码进行管理。
第一步:修改mysql配置,让mysql不需要root密码就能进行管理
    当确认已经忘记MySQL密码,则可以通过以下方案重置root用户密码。
    双击打开C:\Program Files\MySQL\MySQL Server 5.1\my.ini文件,点击“记事本”软件顶部的“编辑”,再选择“查找”,在“查找内容”处输入[mysqld],并点击“查找下一个”,它会自动转到[mysqld]字段行。在下面增加一行skip-grant-tables并保存,点击左下角“开始”,“管理工具”,“服务”。鼠标右键点击服务列表中的“MySQL”服务,选择“重新启动”。
    这时的MySQL不需要密码即可登录数据库。点击左下角“开始”,“所有程序”,“MySQL”,“MySQL Server 5.1”,“MySQL Command Line Client”打开MySQL命令行控制台。窗口内出现“Enter Password:”提示,直接按回车键登录到MySQL控制台。


第二步:修改root密码
    输入use mysql;按回车键,出现Database changed提示。
    再输入update user set password=password('4090.cn') WHERE User='root';按回车键,这样就把密码修改为了4090.cn。
如果担心输入错误,您可以直接复制这段内容,鼠标右键在点到控制台空白处,选择“粘贴”,再按回车运行,出现提示“Query OK, 2 rows affected (0.00 sec) Rows matched: 2  Changed: 2  Warnings: 0”提示,表示执行成功。
    再输入flush privileges;按回车,出现“Query OK, 0 rows affected (0.00 sec)”提示。


第三步:修改mysql配置,还原密码登录。
    去掉my.ini中的[mysqld]字段下面一行的skip-grant-tables,再次重启MySQL服务。此时,用新的密码

4090.cn连接数据库。


    MySQL的root用户密码重置由此完成。

 

这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!