728x90
반응형
MySQL을 사용하다 보면 아래와 같은 오류를 만날 수 있습니다.
MySQL said: Authentication plugin 'caching_sha2_password' cannot be loaded:
dlopen(/usr/local/lib/plugin/caching_sha2_password.so, 0x0002):
tried: '/usr/local/lib/plugin/caching_sha2_password.so' (no such file),
'/System/Volumes/Preboot/Cryptexes/OS/usr/local/lib/plugin/caching_sha2_password.so' (no such file)
이 오류는 MySQL 클라이언트가 caching_sha2_password
인증 방식을 지원하지 않을 때 발생합니다. 이번 포스팅에서는 해당 오류의 원인과 해결 방법을 자세히 살펴보겠습니다.
🔍 오류 원인
- MySQL 클라이언트 버전이 낮음
- MySQL 8.0 이상에서는 기본 인증 방식으로
caching_sha2_password
를 사용합니다. - 하지만 MySQL 클라이언트(Workbench, Connector 등)의 버전이 낮으면 이를 지원하지 않아 오류가 발생합니다.
- MySQL 8.0 이상에서는 기본 인증 방식으로
- MySQL 서버가 인증 플러그인을 제대로 로드하지 못함
- MySQL 서버의 플러그인 파일이 손상되었거나 누락되었을 수 있습니다.
- 사용자 계정의 인증 방식이
caching_sha2_password
로 설정됨- 클라이언트가
mysql_native_password
방식을 지원하는 경우, 인증 방식을 변경해야 할 수도 있습니다.
- 클라이언트가
🛠 해결 방법
✅ 1. 현재 MySQL 인증 방식 확인
우선, MySQL 서버에 접속하여 현재 사용자 계정의 인증 방식을 확인합니다.
SELECT user, host, plugin FROM mysql.user;
출력 결과에서 plugin
이 caching_sha2_password
로 설정되어 있다면, 다음 단계를 진행하세요.
✅ 2. MySQL 사용자 인증 방식을 mysql_native_password
로 변경
MySQL 5.x 버전과 호환되도록 인증 방식을 변경합니다.
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'your_password';
FLUSH PRIVILEGES;
⚠️
'your_password'
부분에 원래 사용하던 비밀번호를 입력하세요.
변경이 완료되었는지 다시 확인합니다.
SELECT user, host, plugin FROM mysql.user;
mysql_native_password
로 변경되었으면 해결될 가능성이 높습니다.
✅ 3. MySQL 클라이언트를 최신 버전으로 업그레이드
클라이언트가 caching_sha2_password
를 지원하지 않으면 최신 버전으로 업데이트해야 합니다.
Mac (Homebrew 사용 시)
brew upgrade mysql
Ubuntu/Debian
sudo apt update
sudo apt install mysql-client
Windows
MySQL 공식 사이트에서 최신 버전을 다운로드합니다.
🔗 https://dev.mysql.com/downloads/
✅ 4. MySQL 서버가 caching_sha2_password
플러그인을 인식하는지 확인
만약 caching_sha2_password
플러그인이 인식되지 않는다면, MySQL 서버에서 다음 명령어를 실행해봅니다.
SHOW PLUGINS;
만약 caching_sha2_password
가 목록에 없다면, MySQL을 다시 설치하거나 플러그인을 추가해야 합니다.
🎯 결론
- MySQL 서버에서 현재 인증 방식 확인 (
SELECT user, host, plugin FROM mysql.user;
) - MySQL 계정의 인증 방식을
mysql_native_password
로 변경 (ALTER USER
명령어 사용) - MySQL 클라이언트를 최신 버전으로 업그레이드
- MySQL 서버가
caching_sha2_password
플러그인을 제대로 인식하는지 확인
이 단계를 차례로 진행하면 오류를 해결할 수 있습니다. 😊
혹시 해결되지 않는다면 댓글로 질문을 남겨주세요! 🚀
728x90
반응형
'IT&DEV - IT & 개발 > Backend' 카테고리의 다른 글
JPA 어노테이션 사용법을 알아보자 (0) | 2025.03.25 |
---|---|
[SpringBoot] application.properties를 application.yml로 변경하는 방법 (0) | 2025.01.23 |
[Java] Map, List, HashMap, Array 비교하기 - 쉽게 풀어보자! (0) | 2025.01.09 |
POJO (Plain Old Java Object) 에 대한 정리 (0) | 2025.01.08 |
[OMV6] Docker에 Ubuntu와 Mysql 설치 (ifconfig/mysql 패스워드) (0) | 2023.05.25 |
댓글