• ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)(转)


    前两天也偶尔出现这个错误,也没在意,因为我重新修改一下mysql的root密码后又可以用了,但昨天却不行,我把root密码修改以后虽然当时能用, 一旦重新进入就都不能用了,可我的密码明明没有错啊?今天终于找到了原因,是权限问题,大家可以参考着下面两篇文章去看一下:
    http://topic.csdn.net/t/20060117/15/4521496.html#
    http://doc.99net.net/doc/database/1076488199/1076549732.html
    由于以前从来没有遇到过这种情况,故把解决方法记录于此,以便今后自己查阅,具体方法就是你在改root密码的时候再加上一句给权限的语句:

    grant all on mysql.* to 'root'@'localhost' identified by 'password';

    最后那个password即是你要修改的root用户的密码

    刚开始用mysql就给我来了个下马威,前些天完整完数据库后安装手册修改了一下root用户的密码,然后用root用户再登陆是一切OK。可是今天再登陆时就报1045错误代码。
    错误代码  1045

    Access denied for user 'root'@'localhost' (using password:YES)

    我的解决办法是重新设置root用户密码,在Windows平台下操作步骤如下:

    1、以系统管理员身份登录到系统;

    2、如果MySQL服务器正在运行,停止它。

    如果是作为Windows服务运行的服务器,进入服务管理器:开始菜单->控制面板->管理工具->服务

    如果服务器不是作为服务而运行的,可能需要使用任务管理器来强制停止它。

    3、创建1个文本文件,并将下述命令置于单一行中:

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

    用任意名称保存该文件。在本例中,该文件为C:mysql-init.txt。

    4、进入DOS命令提示:开始菜单->运行-> cmd

    假定你已将MySQL安装到C:mysql。如果你将MySQL安装到了另一位置,请对下述命令进行相应的调整。

    在DOS命令提示符下,执行命令:

    C:mysqlin>mysqld-nt --init-file=C:mysql-init.txt

    在服务器启动时,执行由“--init-file”选项(作用:在启动时从指定的文件中读取SQL命令)命名的文件的内容,更改根用户密码。当服务器成功启动后,应删除C:mysql-init.txt。

    5、如果起动MySQL服务器出错,把进程mysqld-nt.exe关闭。然后重启它,OK。

    6、或者停止MySQL服务器,然后在正常模式下重启它。如果以服务方式运行服务器,应从Windows服务窗口启动它。如果以手动方式启动了服务器,能够像正常情形下一样使用命令。

    应能使用新密码进行连接。

  • 相关阅读:
    刷题-力扣-223. 矩形面积
    刷题-力扣-135. 分发糖果
    刷题-力扣-134. 加油站
    刷题-力扣-343. 整数拆分
    刷题-力扣-162. 寻找峰值
    刷题-力扣-371. 两整数之和
    20191114-2 Beta事后诸葛亮会议
    Beta阶段贡献分配
    扛把子组20191114-4 Beta发布用户使用报告
    beta 2/2 阶段中间产物提交
  • 原文地址:https://www.cnblogs.com/xingmeng/p/3344009.html
Copyright © 2020-2023  润新知