Database > RDS for MySQL > DB 엔진

DB 엔진

MySQL의 버전 번호는 X.Y.Z 형식으로 구성됩니다. NHN Cloud의 RDS for MySQL에서는 X.Y는 메이저 버전을, Z는 마이너 버전을 나타냅니다.

RDS에서 제공하는 DB 엔진 버전

아래에 명시된 버전을 사용할 수 있습니다. 신규 DB 인스턴스 생성 및 읽기 복제본 추가는 메이저 버전당 상위 7개 마이너 버전까지만 지원합니다. MySQL 8.0.34 미만 버전은 MySQL LTS 지원 정책에 따라 지원이 종료되었습니다. 해당 버전의 DB 인스턴스는 최신 버전으로 업그레이드하기를 권장합니다.

버전 비고
8.4
MySQL 8.4.7
MySQL 8.4.6
MySQL 8.4.5
8.0
MySQL 8.0.44
MySQL 8.0.43
MySQL 8.0.42
MySQL 8.0.41
MySQL 8.0.40
MySQL 8.0.36
MySQL 8.0.35 신규로 생성하거나 읽기 복제본을 추가할 수 없습니다.
MySQL 8.0.34 신규로 생성하거나 읽기 복제본을 추가할 수 없습니다.
MySQL 8.0.33 신규로 생성하거나 읽기 복제본을 추가할 수 없습니다.
MySQL 8.0.32 신규로 생성하거나 읽기 복제본을 추가할 수 없습니다.
MySQL 8.0.28 신규로 생성하거나 읽기 복제본을 추가할 수 없습니다.
MySQL 8.0.23 신규로 생성하거나 읽기 복제본을 추가할 수 없습니다.
MySQL 8.0.18 신규로 생성하거나 읽기 복제본을 추가할 수 없습니다.
5.7
MySQL 5.7.37
MySQL 5.7.33 외부 백업본으로 DB 인스턴스를 복원할 수 없습니다.

DB 엔진 버전 관리

DB 인스턴스를 생성한 이후, DB 인스턴스 수정과 함께 DB 엔진 버전을 변경할 수 있습니다.

[주의] DB 버전 변경 시 업그레이드만 지원하며, 다운그레이드는 지원하지 않습니다.

DB 엔진 버전 업그레이드 시, 메이저 버전 번호만 변경되는 경우는 메이저 버전 업그레이드로, 마이너 버전 번호만 변경되는 경우는 마이너 버전 업그레이드로 간주합니다. DB 엔진 메이저 버전 업그레이드 시 바로 다음 메이저 버전으로만 업그레이드할 수 있습니다.

MySQL 5.7에서 MySQL 8.0으로 업그레이드하기 위한 사전 점검

MySQL 8.0과 MySQL 5.7 사이에는 상당수의 비호환 요소가 있습니다. 따라서 5.7에서 8.0 버전으로 메이저 버전 DB 엔진을 업그레이드하면 문제가 발생할 수 있습니다. 문제 발생이 예상되는 일부 항목을 사전에 점검해야 합니다. 다음은 사전 점검이 필요한 항목입니다.

  • mysqlcheck로 확인했을 때 버전 업그레이드 결격 사항이 없어야 합니다.
  • INFORMATION_SCHEMA.VIEWS로 확인했을 때 컬럼명이 64자를 초과하는 내용이 없어야 합니다.
  • 데이터 사전에서 사용되는 테이블과 동일한 명칭의 테이블이 없어야 합니다.
  • 길이가 255자 또는 1020바이트를 초과하는 개별 ENUM, SET 열 요소가 있는 테이블, 저장 프로시저가 없어야 합니다.
  • 외래 키 제약 조건 이름이 64자를 초과하는 테이블이 없어야 합니다.
  • lower_case_table_names 설정을 1로 변경하려는 경우 스키마 이름이 소문자인지 확인해야 합니다.
  • lower_case_table_names 설정을 1로 변경하려는 경우 테이블 이름이 소문자인지 확인해야 합니다.
  • 특정 파티션 체크로 추출되는 파티션 테이블이 없어야 합니다.
  • InnoDB 시스템 테이블 스페이스와 일반 테이블 스페이스를 포함하는 공유 테이블 스페이스에 상주하는 테이블 파티션이 없어야 합니다.

DB 버전 업그레이드 사전 점검 결과는 다음과 같은 방법으로 확인할 수 있습니다. - 5.7에서 8.0으로 업그레이드하기 위한 체크리스트 세부사항(https://static.toastoven.net/prod_rds/mysql/23.08.17/Check_5.7_to_8.0_ko.xlsx) 파일로 직접 확인 - 콘솔에서 DB 버전 업그레이드 시 DB 엔진 업그레이드 사전 확인 버튼을 클릭한 결과 확인 - DB 버전 업그레이드 시도 결과 확인

콘솔의 DB 엔진 업그레이드 사전 확인 결과와 DB 버전 업그레이드 시도 결과는 개별 DB 인스턴스의 로그 탭에 생성된 db_version_upgrade_compatibility.log 파일에서 세부 내역을 확인할 수 있습니다. 세부 내역 항목의 의미는 다음과 같습니다. - CHECK_BY_MYSQL_CHECK: mysqlcheck로 확인했을 때 버전 업그레이드 결격 사항이 없어야 합니다. - COLUMN_LENGTH_LIMIT_CHECK: INFORMATION_SCHEMA.VIEWS로 확인했을 때 컬럼명이 64자를 초과하는 내용이 없어야 합니다. - DUPLICATE_NAME_WITH_DATA_DICT: 데이터 사전에서 사용되는 테이블과 동일한 명칭의 테이블이 없어야 합니다. - ENUM_SET_SIZE_CHECK: 길이가 255자 또는 1020바이트를 초과하는 개별 ENUM, SET 열 요소가 있는 테이블, 저장 프로시저가 없어야 합니다. - FOREIGN_KEY_LENGTH_LIMIT_CHECK: 외래 키 제약 조건 이름이 64자를 초과하는 테이블이 없어야 합니다. - LOWER_CASE_SCHEMAS_NAMES_CHECK: lower_case_table_names 설정을 1로 변경하려는 경우 스키마 이름이 소문자인지 확인해야 합니다. - LOWER_CASE_TABLE_NAMES_CHECK: lower_case_table_names 설정을 1로 변경하려는 경우 테이블 이름이 소문자인지 확인해야 합니다. - PARTITION_TABLE_CHECK: 특정 파티션 체크로 추출되는 파티션 테이블이 없어야 합니다. - PROPERTY_LENGTH_LIMIT_CHECK: InnoDB 시스템 테이블 스페이스와 일반 테이블 스페이스를 포함하는 공유 테이블 스페이스에 상주하는 테이블 파티션이 없어야 합니다.

또한 5.7에서는 사용되었지만 8.0에서는 제거 또는 변경된 사항을 확인해야 합니다. - SQL 변경 항목 가이드 - 8.0에서 제거된 기능 가이드

MySQL 8.0에서 MySQL 8.4로 업그레이드하기 위한 사전 점검

MySQL 8.4로 업그레이드하려면 먼저 MySQL 8.0으로 업그레이드된 상태여야 합니다. 8.0에서 8.4 버전으로 메이저 버전 DB 엔진을 업그레이드하면 문제 발생이 예상되는 일부 항목을 사전에 점검해야 합니다.

콘솔의 DB 엔진 업그레이드 사전 확인에서 업그레이드 체커로 검출된 항목을 확인할 수 있으며, 오류로 검출된 항목은 반드시 처리해야 합니다. 자세한 설명은 MySQL 홈페이지를 참고합니다. - 업그레이드 체커 가이드

또한 8.4 버전에서 제거 또는 변경된 사항을 확인해야 합니다. - 비호환 변경 항목 가이드 - 8.4에서 제거된 기능 가이드

MySQL 버전 업그레이드 제약 사항

MySQL 8.0.18 버전은 직접 MySQL 8.4로 업그레이드할 수 없습니다. 8.0.18에서 8.4로 업그레이드하려면 다음 조건을 충족해야 합니다.

업그레이드 경로 1. MySQL 8.0.23 이상으로 먼저 업그레이드 2. 이후 MySQL 8.4 버전으로 업그레이드

이는 MySQL 8.4 버전에서 요구하는 최소 호환 버전이 8.0.23 이상이기 때문이며, 해당 버전보다 낮은 환경에서는 메타데이터 및 내부 스키마 구조의 호환성이 보장되지 않습니다.

더미 DB 인스턴스를 사용한 DB 엔진 버전 업그레이드

DB 인스턴스 수정 화면에서 DB 엔진 버전 변경을 시도할 때 더미 DB 인스턴스 사용 여부를 선택해 버전 업그레이드 중에도 고가용성을 유지할 수 있습니다. 더미 DB 인스턴스 사용을 선택하면 DB 버전 업그레이드용 예비 마스터가 생성됩니다.

[주의] 더미 DB 인스턴스는 업그레이드 과정 중 임시 예비 마스터를 생성하므로, 해당 옵션은 고가용성 구성이 아닌 경우에만 사용할 수 있습니다.

고가용성 DB 인스턴스 업그레이드 시 장애 조치 수동 제어

DB 인스턴스가 고가용성으로 구성되어 있을 때 예비 마스터의 엔진 버전을 먼저 업그레이드한 뒤 장애 조치를 사용하여 예비 마스터를 마스터로 승격합니다. 장애 조치는 마스터의 서비스를 잠시 중단하기 때문에 사용자가 원하는 시점에 장애 조치를 시작할 수 있습니다. 버전 업그레이드 시 장애 조치 수동 제어 설정을 사용하면 사용자가 콘솔에서 직접 장애 조치를 시작할 수 있습니다.

[주의] 장애 조치 수동 제어가 60시간 이상 트리거되지 않으면 업그레이드 작업이 자동으로 취소됩니다.

노후 운영체제를 사용하는 경우

내부 운영체제가 노후된 DB 인스턴스는 DB 버전을 업그레이드하기 전에 VM 교체를 동반한 운영체제 버전 업그레이드가 필요합니다. 알림 그룹의 감시 대상 인스턴스 및 이벤트 구독의 이벤트 소스는 변경된 식별자로 자동 교체됩니다. 단일 DB 인스턴스는 DB 버전 변경 시 더미 DB 인스턴스 사용을 권장합니다. 고가용성 DB 인스턴스는 DB 인스턴스 교체 과정에서 장애 조치를 이용하여 마스터와 예비 마스터의 역할이 변경됩니다. 마스터의 부하가 심할 경우 장애 조치에 실패할 수 있으므로 DB 버전 변경은 부하가 심하지 않은 시간에 수행하기를 권장합니다.

[주의] IP ACL 또는 보안 그룹에서 기존 DB 인스턴스의 내부 IP를 직접 사용하는 경우 주의해야 합니다.

MySQL을 위한 옵션

MySQL을 위한 MariaDB 서버 감사 플러그인 지원

RDS for MySQL에서는 MariaDB 감사 플러그인을 사용하여 MySQL DB 인스턴스용 감사 플러그인을 제공합니다.

[주의] 일부 MySQL 버전에서는 지원하지 않을 수 있으며, 지원하지 않는 버전으로 업그레이드하면 해당 플러그인을 사용할 수 없습니다.

지원 버전

MySQL 버전 서버 감사 플러그인 지원 여부
8.4
MySQL 8.4.7 O
MySQL 8.4.6 O
MySQL 8.4.5 O
8.0
MySQL 8.0.44 O
MySQL 8.0.43 O
MySQL 8.0.42 O
MySQL 8.0.41 O
MySQL 8.0.40 O
MySQL 8.0.36 O
MySQL 8.0.35 O
MySQL 8.0.34 O
MySQL 8.0.33 O
MySQL 8.0.32 O
MySQL 8.0.28 O
MySQL 8.0.23 O
MySQL 8.0.18 X
5.7
MySQL 5.7.37 X
MySQL 5.7.33 O
MySQL 5.7.26 O
MySQL 5.7.19 O
MySQL 5.7.15 X
5.6
MySQL 5.6.33 O
TOP