MacOS系统下使用navicat连接Mysql数据库出现 ’1045 - Access denied for user ‘root’@'localhost (using password: YES)‘连接失败的解决办法
注:本方法适用于MacOS Big Sur系统。
解决步骤
一、修改Mysql密码
- 在终端输入命令:“sudo /usr/local/mysql/support-files/mysql.server stop”, 来关闭Mysql;
- 进入终端,输入“cd /usr/local/mysql/bin/”并回车;
- 输入“sudo su”并回车以获取管理员权限;
- 输入“./mysqld_safe --skip-grant-tables &”并回车以禁止mysql验证功能,mysql会自动重启,此时偏好设置中的mysql状态会变成running;
- 新建一个终端窗口(cmd+T),输入命令:“sudo/usr/local/mysql/bin/mysql -u root -p”,然后输入自己电脑密码和mysql密码已启动Mysql;
- 接着输入命令 “./mysql”并回车;
- 接着输入命令“FLUSH PRIVILEGES”并回车;
- 接着输入命令“set password for ‘root’@‘localhost’ = '新密码”并回车,密码更改成功。如果此时navicat依然无法成功连接数据库,请看以下内容;
二、设置Navicat的use socket
- 打开mac 下的 navicat,建立相应的连接,点击设置连接属性;
- 点击“高级”;
- 找到“use socket”选项, 并打勾。在打开之后会有默认值“/tmp/mysql.sock”,打勾之后,测试,连接成功。