Mac使用Navicat连接mysql时报1045 - Access denied for user 'root'@'localhost' (using password: YES)错误

使用Navicat连接mysql

报错1045 - Access denied for user 'root'@'localhost' (using password: YES),我输入的密码是正确的但是新建查询的时候报1045错误,提示使用了密码但是登录失败。

Step1: 停止mysql服务

先停止mysql服务。操作路径是系统偏好设置 -> mysql -> stop service

Step2: 禁止mysql的验证功能

  1. 打开Terminal进入mysql的bin目录下:cd /usr/local/mysql/bin/
  2. 使用管理员身份登陆: sudo -i或者 sudo su
  3. 禁止mysql的验证功能:./mysqld_safe --skip-grant-tables &

Step3: 修改密码

  1. 进入mysql命令行:./mysql
  2. 使用flush privileges刷新用户权限表(必须使用flush privileges的两种情况:改密码和授权超用户):FLUSH PRIVILEGES;

MySQL用户数据和权限有修改后,希望在"不重启MySQL服务"的情况下直接生效,那么就需要执行这个命令。通常是在修改ROOT帐号的设置后,怕重启后无法再登录进来,那么直接flush之后就可以看权限设置是否生效。而不必冒太大风险。

  1. 修改密码:ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';然后就大功告成了。

你可能感兴趣的:(Mac使用Navicat连接mysql时报1045 - Access denied for user 'root'@'localhost' (using password: YES)错误)