zoukankan      html  css  js  c++  java
  • Access denied for user 'root'@'localhost' (using password: YES) 拒绝访问,

    一、问题

      有时候我们登录Mysql输入密码的时候,会出现这种情况

      mysql -u root -p 

      Enter Password > '密码'

      错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

      或者:错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    二、解决办法

      修改my.in/my.cnf配置文件

        进入mysql安装目录

        编辑my.ini

        在[mysqld]下添加skip-grant-tables,保存即可。


      使用管理员身份打开命令行

      ①重启mysql:

        1、net stop mysql    2、net start mysql  


      ②进入mysql,登录
        mysql -u root -p
        不用输入密码,直接回车(出现Enter Password 也一样直接回车,即可登陆成功)


      ③输入use mysql,修改root的密码:
        update mysql.user set authentication_string='123' where user='root';
        flush privileges;


      ④退出:

        quit;


      ⑤再次重启mysql:

        1、net stop mysql     2、net start mysql


      ⑥测试是否成功就是是否登陆成功咯。
        mysql -u root -p

        Enter Password>'新密码'

      就不会出错,可以登录啦!!!

    (另外一种情况就是,,你密码输入错误了,如果是初始化后第一次登录,出现这种情况的话,很大概率就是密码错误,初始化后的密码要认真查看,可能会因为空格、小数点等符号输错)

    三、如果出现更改后还是无法登录

    1、把密码重置为空

        命令如下: use mysql

        update user set authentication_string='' where user='root';

        quit

    2、关闭以-console --skip-grant-tables --shared-memory 启动的mysql服务,

    3、打开命令框,输入:net start mysql启动mysql服务。

    4、密码已置为空,所以无密码状态登录命令:mysql -uroot -p

    5、再次更改用户密码:

      ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

         输入quit,退出当前登录,输入登陆命令;mysql -u root -p后登录成功,重置密码结束。

    每天逼着自己写点东西,终有一天会为自己的变化感动的。这是一个潜移默化的过程,每天坚持编编故事,自己不知不觉就会拥有故事人物的特质的。 Explicit is better than implicit.(清楚优于含糊)
  • 相关阅读:
    因为数据库无法大写循环所有要使用shell
    mysql动态扩容调研
    MySQL扩容
    数据库死锁及解决死锁问题
    SQL数据库常见故障及解决方法
    通过Ajax方式上传文件(input file),使用FormData进行Ajax请求
    Ajax方式上传文件
    高并发解决方案--负载均衡
    对TCP/IP协议的深入浅出总结
    常用的php开发工具有哪些?
  • 原文地址:https://www.cnblogs.com/kylin5201314/p/14971761.html
Copyright © 2011-2022 走看看