ZBLOG

steven@unbuntu:~/share/05_mysql$ mysql -u root ERROR 1698 (28000): Access denied for user 'root'@'localhost'

如果您在尝试使用 mysql -u root 命令时遇到 “Access denied for user ‘root’@‘localhost’” 的错误,有几个可能的原因和解决方法:

  1. 密码问题:确保您输入的密码正确。如果忘记了密码,可以尝试通过重置 root 密码来解决。

    • 停止 MySQL 服务。
    • 使用特殊参数启动 MySQL 服务,允许跳过授权认证:
      
      sudo mysqld_safe --skip-grant-tables &
      
    • 连接到 MySQL 服务器:
      
      mysql -u root
      
    • 切换到 mysql 数据库:
      
      use mysql;
      
    • 更新 root 用户的密码:
      
      update user set authentication_string=PASSWORD("new_password") where User='root';
      
    • 刷新权限表并退出 MySQL:
      
      flush privileges;
      quit;
      
    • 停止 MySQL 服务。
    • 正常启动 MySQL 服务,并尝试使用新密码登录。
  2. 授权问题:可能是由于没有为用户 ‘root’@‘localhost’ 分配适当的权限导致的。请检查用户 ‘root’@‘localhost’ 的权限设置,并确保具有适当的访问权限。

  3. 安装问题:如果以上解决方法无效,请考虑重新安装 MySQL,确保在安装期间正确设置了 root 用户密码。

请注意,在生产环境中不推荐直接使用 root 用户进行数据库连接。建议创建一个普通用户并赋予适当的权限来操作数据库。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=12904

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?