programing

Sequel Pro와 MySQL을 연결하지 못했습니다.

sourcetip 2022. 11. 26. 13:46
반응형

Sequel Pro와 MySQL을 연결하지 못했습니다.

방금 Homebrew에서 mac에 mysql을 설치했습니다.

brew install mysql

mysql -V

mysql  Ver 8.0.11 for osx10.13 on x86_64 (Homebrew)

터미널에서 동작하여 mysql에 로그인할 수 있지만 Sequel Pro에서는 이렇게 되어 있습니다.

여기에 이미지 설명 입력

호스트 127.0.0.1에 연결할 수 없거나 요청이 시간 초과되었습니다.

주소가 올바르고 필요한 권한이 있는지 확인하거나 연결 타임아웃(현재 10초)을 늘려 보십시오.

MySQL은 다음과 같이 말했습니다.인증 플러그인 'caching_sha2_password'를 로드할 수 없습니다. dlopen(/usr/local/lib/plugin/caching_sha2_password.so, 2): 이미지를 찾을 수 없습니다.

내가 무엇을 놓치고 있는지 알 수 없다

이는 Sequel Pro가 아직 새로운 종류의 사용자 로그인을 할 준비가 되지 않았기 때문입니다.이 오류는 "드라이버가 없습니다.

mysql + 홈브루

기본적으로는 수동으로 몇 가지 작업을 수행해야 하지만 아래 솔루션과 같이 데이터베이스 데이터는 삭제되지 않습니다.

  • my하여 my.cnf 섹션으로 합니다.[mysqld] 회선 "syslog":

    default-authentication-plugin=mysql_native_password

  • " " mysql " : runmysql -u root -p그런 다음 inside shell에서 다음 명령어를 실행합니다(실제 비밀번호로 [password]를 지정합니다).

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '[password]';

  • 에서 "mysql"로 합니다.exitbrew services restart mysql.

될 거야.

퀵픽스(파괴방법)

비홈브루 설치의 빠른 수정:

Apple Logo > System Preferences > MySQL > Initialize Database하고 '을 선택합니다.

재기동하면, 접속할 수 있게 됩니다.새로 설치할 때만 이 작업을 수행하십시오. 그렇지 않으면 DB 테이블이 손실될 수 있습니다.


my.cnf

my.cnf 파일은 Unix/Linux의 /etc/my.cnf에 있습니다.


대체 수단

For those who is still struggling with Sequel Pro problems: Sequel Pro was a great product, but with tons of unresolved issues and last release being dated to 2016 perhaps it's a good idea to look for some alternatives. There is a fork of SequelPro called SequelAce that seems to be pretty stable and up-to-date, it keeps similar functionality, similar look and feel, yet at the same time it is devoid of old Sequel Pro problems

TL;DR: Sequel Pro는 2016년 이후 사망했습니다.도구 때문에 DB를 다운그레이드하지 마십시오.다른 도구로 넘어갑니다.

업데이트 2020: Sequel Pro는 공식적으로 사망했지만 비공식적으로 생존했습니다!이 문제가 발생하지 않은 빌드(즉, Mysql 8 인증 지원)는 https://sequelpro.com/test-builds에서 찾을 수 있습니다.

업데이트 2021: Sequel Ace는 살아있는 좋은 대안입니다: https://github.com/Sequel-Ace/Sequel-Ace#installation (Maciej Kwas의 답변에 대한 수정)


여기에 있는 다른 모든 솔루션은 사용 중인 도구에 대한 DB 설정 변경(MySQL에서 홍보한 대로 보안 저하)을 권장하고 있습니다.그건 내가 받아들일 수 없는 일이야.

저는 항상 Sequel Pro의 열렬한 팬이었고, 심지어 기부를 하기도 했습니다.하지만 저의 열정과 사랑에도 불구하고 2016년 이후 출시되지 않았다면 죄송합니다.욜로, 난 앞으로 나아가야 해!

제가 찾은 대안으로 https://stackoverflow.com/a/55235533/2321594,에서 @http seldon 덕분에)는 MySQL 8의 새로운 인증(비인증) 방식을 지원하는 DBeaver입니다.

PS. DB쪽이 아닌 툴쪽에서 유일한 트릭은 MySQL 8 연결을 작성할 때 "드라이버 속성"으로 이동하여 값을 설정해야 할 수 있습니다(나중에 "연결 편집"에서 확인할 수 있음).allowPublicKeyRetrieval로로 합니다.true.

Docker를 사용하여 작성한 MySQL 컨테이너에 연결하기 위해 이것이 필요했습니다.내의 다른 툴뿐 에 MySQL에서 새 하거나 MySQL IP를 .-e MYSQL_ROOT_HOST=%ENV가 되다

  1. mysql 설정이 없는 경우 다음 내용을 에코합니다.~/.my.conf
[mysqld]
default-authentication-plugin=mysql_native_password
  1. mysql에 서명하다mysql -u root -p
  2. 사용자 를 root로 설정합니다.ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '[PASSWORD]';서 ''는[PASSWORD]비밀번호는 사용자가 선택할 수 있습니다.
  3. 예를 들어 mysql을 재시작합니다.brew services restart mysql

Sequel Pro는 공식적으로 중단되었으며 더 이상 새로운 MySql 기능을 지원하지 않습니다.하지만 좋은 소식은 GitHubApp Store에서 구할 수 있는 Sequel Ace로 대체되었다는 것입니다.이 앱은 무료이며, Sequel Pro의 공동 작업자 중 한 명이 게시물을 작성했기 때문에 Sequel Pro를 공식 대체한 것 같습니다.

추신. 다른 사람들이 Sequel Pro를 대체할 최신 버전이 있다고 언급하지 않았기 때문에 답변으로 이 글을 올리기로 결정했습니다.

root@127.0.0.1을 통해 MySQL에 접속할 경우 패스워드도 리셋해야 합니다.

ALTER 사용자 'root'@'127.0.0.1'은 mysql_native_password로 식별됩니다.

에러가 발생하는 경우는, 다음과 같이 동작합니다.

호스트 127.0.0.1에 연결할 수 없거나 요청이 시간 초과되었습니다.

주소가 올바르고 필요한 권한이 있는지 확인하거나 연결 타임아웃(현재 10초)을 늘려 보십시오.

MySQL은 다음과 같이 말했습니다.인증 플러그인 'caching_sha2_password'를 로드할 수 없습니다. dlopen(/usr/local/lib/plugin/caching_sha2_password.so, 2):

이 솔루션을 사용해 보십시오.

여기에 이미지 설명 입력

, 「」를 인스톨 하고 있는 유저가 있는 .MySQL version > 8 through를 통해..dmg파일, 공식 링크에서 다운로드했습니다.이 경우 이 가이드라인을 이용해 주십시오.향후 링크를 사용할 수 없게 될 경우를 대비해 아래 내용을 추가하겠습니다.

이 문제는 새로운 버전을 사용하고 있기 때문입니다.Strong Password Encryption이 기능은 MySQL 8의 새로운 기능으로, MySQL 8을 사용하여 설치했을 경우.dmg파일, 에 액세스 할 수 있습니다.System Preferences > MySQL를 클릭합니다.Initialize Database암호를 입력하고 두 번째 옵션을 선택합니다.Use Legacy Password Encryption.

언급URL : https://stackoverflow.com/questions/51179516/sequel-pro-and-mysql-connection-failed

반응형