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

在Linux系统下,登录mysql,显示如下错误

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

这个一般是由于设置root密码时过于简单,登录验证失败。

解决办法:重置root密码

  1. 编辑mysql的配置文件 /etc/my.cnf
    vim /etc/my.cnf
    检索[mysqld]字段,在后面添加一行
    skip-grant-tables
    然后保存
    :wq
  2. 重启mysql服务
    service mysqld restart
    注意CentOS系统下,就是“mysqld”。
  3. 进入mysql,在命令行输入
    mysql
  4. 修改root密码
    use mysql
    update user set Password=password('你的密码') where User='root';
    当提示3条记录更新,表示密码更新成功。
    quit;
    注意:密码组成至少8位,至少含有一个数字、一个小写字母、一个大写字母、一个特殊字符,还有最后的分号“;”。
  5. 编辑 /etc/my.cnf文件,去掉我们添加的“skip-grant-tables”字段。
  6. 重启mysql服务
    service mysqld restart
  7. 登录mysql
    mysql -u root -p
    然后输入密码,登录成功。

你可能感兴趣的:(Linux)