메인 콘텐츠로 건너뛰기

VillageSQL is a drop-in replacement for MySQL with extensions.

All examples on this page work on VillageSQL. Install Now →
This guide is AI-generated content. We tested every command in it against a live server before publishing, but your mileage may vary. Do your own extensive testing before you run any of this against a production system.
MySQL 8.0은 2026년 4월 30일에 지원이 종료되었고, 더 이상 보안 패치를 받지 않습니다. 업그레이드 대상은 MySQL 8.4 LTS이며, 프리미어 지원은 대략 2029년 4월까지, 연장 지원은 2032년 4월까지입니다. Oracle은 8.0에서 8.4로의 경로를 매끄럽게 설계했지만, 두 가지 변경이 실제 시스템을 깨뜨립니다: 기본 인증 플러그인과 제거된 구성 변수입니다. 이 가이드는 둘 다와, 시작하기 전에 실행할 확인 사항을 다룹니다.

8.4에서 바뀌는 것

업그레이드는 제자리에서 이루어집니다: 8.0 데이터 디렉터리 위에 8.4 바이너리를 설치하면 서버가 첫 시작 시 데이터 딕셔너리를 스스로 업그레이드합니다. 대부분의 스키마와 쿼리는 손대지 않고 넘어갑니다. 실제로 문제가 되는 변경:

1단계: 옛 인증 플러그인을 사용하는 계정 찾기

업그레이드하기 전에, 아직 mysql_native_password를 사용하는 모든 계정을 나열하세요:
각 계정을 caching_sha2_password로 마이그레이션하고 애플리케이션에 저장된 비밀번호를 갱신하세요:
8.4에서는 플러그인이 로드되지 않았으므로 옛 플러그인으로 계정을 만들면 실패합니다:
업그레이드 전에 계정을 마이그레이션할 수 없다면, 8.4는 구성에 --mysql-native-password=ON을 넣어 플러그인을 명시적으로 로드할 수 있습니다. 그것을 목적지가 아니라 다리로 취급하세요: 플러그인은 사용 중단되었고 제거가 예정되어 있습니다.

2단계: 구성 파일 정리하기

MySQL 8.4는 8.0에서 사용 중단된 시스템 변수를 제거합니다. my.cnf가 그중 하나를 설정하면, 8.4 서버는 알 수 없는 변수 오류와 함께 시작을 거부합니다. 가장 흔한 두 가지:
expire_logs_days를 binlog_expire_logs_seconds로 바꾸고, default_authentication_plugin을 삭제하세요(8.4의 대체 변수 authentication_policy는 이미 caching_sha2_password를 기본값으로 합니다). 설정한 모든 변수를 구성에서 grep하고, 중단 시간 동안이 아니라 업그레이드 전에 각각을 8.4 참조 문서와 대조하세요.

3단계: 제거된 구문이 스키마에 있는지 확인하기

모든 데이터베이스에 대해 mysqlcheck를 실행하고 출력을 검토하세요:
FLOAT 또는 DOUBLE 열의 AUTO_INCREMENT와 비표준 외래 키 제약 조건에 특히 주의하세요. 둘 다 8.4에서 제거되었습니다.

4단계: 백업한 다음 제자리에서 업그레이드하기

8.4에서 8.0으로의 지원되는 제자리 다운그레이드는 없습니다. 데이터 딕셔너리가 업그레이드되면, 되돌아가는 유일한 방법은 백업을 복원하는 것입니다. 그러니 백업은 형식적인 절차가 아닙니다:
그다음 업그레이드 자체입니다: 8.0 서버를 중지하고, 8.4 바이너리를 설치하고, 같은 데이터 디렉터리에서 서버를 시작하세요. 서버는 첫 시작 시 업그레이드 단계를 자동으로 실행합니다. 연결 준비가 되었다고 보고할 때까지 오류 로그를 지켜보세요. 결과를 확인하세요:

VillageSQL 관점

VillageSQL Server는 MySQL 8.4의 드롭인 대체품입니다. 8.4에 올라서면, 스택에서 MySQL 8.4와 동작하는 모든 것이 VillageSQL과도 동작하며, 나중에 전환하는 것은 기능적으로 같은 데이터 디렉터리에서의 마이너 버전 교체입니다. 확장 프레임워크에 관심이 있다면, 어차피 하고 있는 8.4 업그레이드가 진입로입니다. 그 절차는 VillageSQL로 업그레이드하기를 보세요.

함께 보기