• mysql登录报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)



    在MySQL登录时出现Access denied for user 'root'@'localhost' (using password: YES) 拒绝访问

    对于出现拒绝访问root用户的解决方案
    错误1045(28000):用户'root'@'localhost'(使用密码:YES)拒绝访问

    首先解析此英文:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES);
    解析的地方有两处:1.Access denied(拒绝访问);2.using password:NO/YES

    一、出现access denied的原因有如下可能:

    1)mysql的服务器停止:
      若MySQL已经没有启动,重启MySQL服务器:systemctl restart mysqld
    2)用户的端口号或者IP导致:
      若用户的端口号与IP(3306/3307)不一致,打开my.ini文件进行编辑。全部编辑替换为: port=X
    3)mysql的配置文件错误----my.ini等文件:
      my.ini文件误输入无效内容,不知道到何处。复制替换该文件;有人已经对my.ini文件进行解释以及注释:https://blog.csdn.net/lienfeng6/article/details/78140404
    4)root用户的密码错误(后面解决)

    二、出现 using password的原因如下:

    不输入密码:

    错误的密码:

    解决方案:
    vim /etc/my.cnf文件;
    在[mysqld]后添加skip-grant-tables(登录时跳过权限检查)

    重启MySQL服务:sudo systemctl restart mysqld

    修改密码

    登录mysql,输入mysql –uroot –p;直接回车(Enter)

    输入:set password for ‘root’@‘localhost’=password(‘Admin123@qwe’);

    如果报:ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

    输入:flush privileges;

    再次输入:set password for ‘root’@‘localhost’=password(‘Admin123@qwe’);

    为避免麻烦,再次设置远程访问

    退出:exit

    再把my.ini的skip-grant-tables删除或者注释掉

    重启MySQL:sudo systemctl restart mysqld

    再次连接,成功

  • 相关阅读:
    安全通信网络(一)网络架构
    安全物理环境(四)防雷击
    安全通信网络(三)可信验证
    安全通信网络(二)通信传输
    云计算安全扩展要求(四)安全区域边界
    云计算安全扩展要求(三)安全通信网络
    Prometheus + Grafana 实现服务器监控数据可视化
    云计算安全扩展要求(五)安全计算环境
    安全区域边界(五)安全审计
    安全计算环境(一)路由器4
  • 原文地址:https://www.cnblogs.com/zhongyehai/p/10695334.html
Copyright © 2020-2023  润新知