Mac OS下,使用Navicat连接MySQL出现的问题

问题1:安装了最新版本的MySQL(mysql-8.0.12-macos10.13-x86_64),但是Navicat版本过低,导致连接MySQL一直报“Can't connect to MySQL server on '127.0.0.1(61)'”错误
原因:可能是由于新版的MySQL 8.x版本采用了新的加密方式,而MySQL 5.x还是使用的以前的加密方式。由于这种变化导致旧版本的Navicat一直无法连接到MySQL

Mac OS下,使用Navicat连接MySQL出现的问题_第1张图片
Snip20180813_3.png

解决方法:更新Navicat
MySQL下载地址: https://dev.mysql.com/downloads/mysql/
Navicat 12: http://www.pc6.com/mac/499877.html
Navicat 安装可能遇到文件损坏问题解决方法: http://mac.orsoon.com/news/187368.html
Mac OS下,使用Navicat连接MySQL出现的问题_第2张图片
Snip20180813_1.png

问题2:遇到 Navicat连接MySQL8.x版本时出现Client does not support authentication protocol requested by server;
原因:遇到这个问题时,在网上查了很多方法,由于自己只是学习如何使用MySQL,也没有过多去深究此问题最合适的解决方法,这里提供几种方法,进攻参考。
解决方法:
1.连接主机:改为localhost
2.确保用户名、密码正确,且端口未被占用(默认3306)

Mac OS下,使用Navicat连接MySQL出现的问题_第3张图片
image.png

3.“高级”中勾选使用套接字文件,套接字文件查找方式:
使用命令行连接MySQL成功后,使用mysql语句"STATUS;"查看即可
Mac OS下,使用Navicat连接MySQL出现的问题_第4张图片
image.png

Mac OS下,使用Navicat连接MySQL出现的问题_第5张图片
image.png

4.在mac中找到php.ini文件(我的电脑上位置为:/private/etc/php.ini ,如果找不到自行百度),打开并查找“pdo_mysql.default_socket=(此处填写scoket文件地址)”和“mysqli.default_socket =(此处填写scoket文件地址)”
php.ini由于在/private/etc/文件下,无法unlock解锁修改的话,可复制到桌面,修改完成后再粘贴回/private/etc/目录下即可

5.做完上述操作后,重启电脑后,启动mysql,先用命令行连接MySQL成功后,再使用Navicat连接!
希望能帮到你。

问题3:Navicat连接MySQL时,报#2000 Unknown MySQL error错误
原因:我这里出现这个问题是由于我之前忘记MySQL密码,使用sudo超级权限(--skip-grant-tables)跨过MySQL。造成任何密码都可以读取MySQL,所以需要关闭掉这个功能。
解决方法:
1.连接MySQL,先修改一下root用户密码
1.1输入“use mysql;”
1.2输入“set password for 'root'@'localhost' = '123456';”
这时候会报此错误:ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
1.3输入“flush privileges;”


image.png

1.4输入“set password for 'root'@'localhost' = '123456';”
到这里就更新密码成功了。
然后"\q"退出MySQL连接,再“mysql -u root -p;”连接一下,试试新密码是否生效,确认没有问题后,再使用Navicat连接MySQL。

后续更新....

你可能感兴趣的:(Mac OS下,使用Navicat连接MySQL出现的问题)