Search
Duplicate
3️⃣

MySQL 서버 업그레이드

일반적으로 두 가지 경우가 있다.
1.
MySQL 서버의 데이터 파일을 그대로 두고 업그레이드하는 방법
인플레이스 업그레이드라고 하며 여러 제약 사항이 있으나 업그레이드 시간을 크게 단축할 수 있다.
2.
mysqldump 도구를 이용해 MySQL 서버의 데이터를 SQL 문장이나 텍스트 파일로 덤프한 후, 업그레이드 된 버전의 MySQL 서버에 덤프된 데이터를 적재하는 방법
논리적 업그레이드라고 하며 버전 간 제약 사항이 거의 없지만 업그레이드 시간이 매우 많이 소요될 수 있다.

1. 인플레이스 업그레이드 제약 사항

마이너 버전 간 업그레이드(*.*.0*.*.1)
데이터 파일의 변경 없이 진행되며 대부분의 경우, 여러 버전을 건너뛰어서 업그레이드하는 것도 허용된다.
메이저 버전 간 업그레이드(5.7.*8.*.*)
대부분 크고 작은 데이터 파일의 변경이 필요하기 때문에 반드시 직전 버전에서만 업그레이드가 허용된다.
만약 두 단계 이상의 버전을 업그레이드가 필요하다면 논리적 업그레이드가 더 나을 수 있다.
특정 마이너 버전에서만 가능할 수 있다.
GA 버전, 안정성이 확인된 버전이여야만 메이저 업그레이드가 가능하다.

2. MySQL 8.0 업그레이드 시 고려 사항

사용자 인증 방식 변경
Caching SHA-2 Authentication 인증 방식이 기본 인증 방식으로 바귀었다.
MySQL 8.0과의 호환성 체크
MySQL 5.7버전에서 손상된 FRM 파일이나 호환되지 않는 데이터 타입 또는 함수가 있는지 mysqlcheck 유틸리티를 사용하여 체크하는 것을 권장한다.
외래키 이름의 길이
64글자로 제한되었으며 기존 외래키의 이름 중, 64자가 넘는 것이 있는지 확인하는 것을 권장한다.
인덱스 힌트
GRUOP BY에 사용된 정렬 옵션
파티션을 위한 공용 테이블스페이스