我刚从自制软件在mac上安装了mysql
brew install mysql
mysql -V
mysql Ver 8.0.11 for osx10.13 on x86_64 (Homebrew)
从终端它的作品,我可以登录到mysql,但从续集专业它说
无法连接到主机127.0.0.1,或请求超时。
确保地址正确并且您具有必要的权限,或者尝试增加连接超时(当前为10秒)。
mysql说:无法加载身份验证插件“caching\u sha2\u password”:dlopen(/usr/local/lib/plugin/caching\u sha2\u password.so,2):找不到图像
不知道我错过了什么
7条答案
按热度按时间7d7tgy0s1#
如果有人面对这个问题
MySQL version >8
通过.dmg
从官方链接下载。在这种情况下,请使用本指南。vktxenjb2#
假设您没有mysql配置,请将以下内容回送到
~/.my.conf
```[mysqld]
default-authentication-plugin=mysql_native_password
drnojrws3#
这是因为sequel pro还没有为一种新的用户登录做好准备,正如错误所说:没有驱动程序。非自制安装的快速修复:
Apple Logo > System Preferences > MySQL > Initialize Database
,然后键入新密码并选择“使用旧密码”重新启动后,您应该能够连接。只在新安装时执行,否则可能会丢失db表。
mysql+自制
基本上你将不得不手动执行一些操作,但是-你的数据库数据不会像上面的解决方案那样被删除
转到my.cnf文件并在节中
[mysqld]
添加行:default-authentication-plugin=mysql_native_password
从终端登录mysql服务器:runmysql -u root -p
,然后在shell内部执行此命令(用实际密码替换[password]:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '[password]';
退出mysql shellexit
然后跑brew services restart mysql
.应该有用。
我的.cnf
在unix/linux上,my.cnf文件位于/etc/my.cnf中
替代品
对于那些仍在与sequel pro问题作斗争的人来说:sequel pro是一款很棒的产品,但由于大量未解决的问题以及最后一个版本的发布日期是2016年,所以寻找一些替代品也许是个好主意。sequelpro有一个分支叫做sequelace,它看起来非常稳定和最新,它保持了相似的功能,相似的外观和感觉,但同时它没有旧的sequelpro问题
4zcjmb1e4#
sequel pro正式停产,不再支持更新的mysql功能。不过,好消息是,它被github和appstore上提供的sequel ace所取代。这个应用是免费的,看起来像是sequel pro的官方替代品,因为这个帖子是由sequel pro的一个合作者发布的。
另外,我决定把这个作为一个答案,因为其他人没有提到,现在有一个最新的替代续集专业
x8goxv8g5#
对我有用。如果出现此错误:
无法连接到主机127.0.0.1,或请求超时。
确保地址正确并且您具有必要的权限,或者尝试增加连接超时(当前为10秒)。
mysql说:无法加载身份验证插件“caching\u sha2\u password”:dlopen(/usr/local/lib/plugin/caching\u sha2\u password.so,2):
请尝试这个解决方案
vptzau2j6#
如果您通过root@127.0.0.1,请确保您也重置了它的密码!
将用户'root'@'127.0.0.1'用mysql\u native\u password标识为'[password]';
ih99xse17#
热释光;dr:sequel pro从2016年就死了。不要因为工具而降级数据库。转到另一个工具。
更新2020:续集专业是正式死亡,但非正式地活着!您可以在这里找到不存在此问题的“夜间”版本(即支持mysql 8 auth):https://sequelpro.com/test-builds
这里的所有其他解决方案都建议更改您正在使用的工具的db设置(如mysql所宣传的那样,降低其安全性)。我不能接受。
我一直是sequel pro的超级粉丝,甚至捐给了它。但是,带着我所有的热情和爱,如果这个工具自2016年以来没有发布,我很抱歉。约洛,我要继续前进!
我找到的替代品https://stackoverflow.com/a/55235533/2321594,感谢@arcseldon)是dbeaver,它支持mysql 8的新身份验证(非遗留)方法。
另外,在工具端,而不是数据库端,唯一的技巧是当你创建一个mysql 8连接时,你可能需要转到“驱动程序属性”(稍后可以在edit connection中找到)并将
allowPublicKeyRetrieval
至true
.我需要这个来连接到我用docker创建的mysql容器。为了让mysql的ip对外可见,对于生态系统中的任何其他应用程序(不仅仅是这个工具),您应该在mysql中创建一个新用户,或者传递
-e MYSQL_ROOT_HOST=%
在运行时或作为env。