Aurora MySQL 버전 3은 MySQL 8.0과 호환 - Amazon Aurora

Aurora MySQL 버전 3은 MySQL 8.0과 호환

Aurora MySQL 버전 3을 사용하여 최신 MySQL 호환 기능, 성능 향상 및 버그 수정을 수행할 수 있습니다. 다음에서 MySQL 8.0 호환성을 갖춘 Aurora MySQL 버전 3에 대해 배울 수 있습니다. 클러스터 및 애플리케이션을 Aurora MySQL 버전 3으로 업그레이드하는 방법을 배울 수 있습니다.

Aurora Serverless v2와 같은 일부 Aurora 기능에는 Aurora MySQL 버전 3이 필요합니다.

MySQL 8.0 커뮤니티 에디션의 기능

Aurora MySQL 버전 3의 초기 릴리스는 MySQL 8.0.23 커뮤니티 에디션과 호환됩니다. MySQL 8.0에는 다음과 같은 여러 새로운 기능이 도입되었습니다.

  • JSON 함수. 사용 정보는 MySQL 참조 설명서JSON 함수를 참조하세요.

  • 창 함수. 사용 정보는 MySQL 참조 설명서Window 함수를 참조하세요.

  • WITH 절을 사용한 공통 테이블 표현식(CTE)입니다. 사용 정보는 MySQL 참조 설명서공통 테이블 표현식(WITH)을 참조하세요.

  • ALTER TABLE 문에 대해 최적화된 ADD COLUMNRENAME COLUMN 절입니다. 이러한 최적화를 '인스턴트 DDL'이라고 합니다. Aurora MySQL 버전 3은 커뮤니티 MySQL 인스턴트 DDL 기능과 호환됩니다. 이전의 Aurora 빠른 DDL 기능은 사용되지 않습니다. 인스턴트 DDL의 사용 정보는 인스턴트 DDL(Aurora MySQL 버전 3) 섹션을 참조하세요.

  • 내림차순 인덱스, 함수 인덱스 및 보이지 않는 인덱스. 사용 정보는 MySQL 참조 설명서보이지 않는 인덱스, 내림차순 인덱스CREATE INDEX 문을 참조하세요.

  • SQL 문을 통해 제어되는 역할 기반 권한입니다. 권한 모델 변경에 대한 자세한 내용은 역할 기반 권한 모델 섹션을 참조하세요.

  • SELECT ... FOR SHARE 문이 포함된 NOWAITSKIP LOCKED 절입니다. 이러한 절은 다른 트랜잭션이 행 잠금을 해제할 때까지 기다리지 않습니다. 사용 정보는 MySQL 참조 설명서읽기 잠금을 참조하세요.

  • 이진 로그(binlog) 복제 향상. Aurora MySQL의 자세한 내용은 이진 로그 복제 섹션을 참조하세요. 특히 필터링된 복제를 할 수 있습니다. 필터링된 복제에 대한 사용 정보는 MySQL 참조 설명서서버가 복제 필터링 규칙을 평가하는 방법을 참조하세요.

  • 힌트. 일부 MySQL 8.0 호환 힌트는 이미 Aurora MySQL 버전 2로 백포팅되었습니다. Aurora MySQL에서 힌트 사용에 대한 자세한 내용은 Aurora MySQL 힌트 섹션을 참조하세요. 커뮤니티 MySQL 8.0의 전체 힌트 목록은 MySQL 참조 설명서최적화 프로그램 힌트를 참조하세요.

MySQL 8.0 커뮤니티 버전에 추가된 기능의 전체 목록은 블로그 게시물, MySQL 8.0의 전체 새 기능 목록을 참조하세요.

Aurora MySQL 버전 3에는 커뮤니티 MySQL 8.0.26에서 백포팅된 포괄적 언어에 대한 키워드 변경도 포함되어 있습니다. 이러한 변경 사항에 대한 자세한 내용은 Aurora MySQL 버전 3에 대한 포괄적 언어 변경 섹션을 참조하세요.

Aurora MySQL Serverless v2를 위한 Aurora MySQL 버전 3 전제 조건

Aurora MySQL 버전 3은 Aurora MySQL Serverless v2 클러스터의 모든 DB 인스턴스에 대한 전제 조건입니다. Aurora MySQL 서버리스 v2에는 DB 클러스터의 리더 인스턴스 및 Aurora MySQL 서버리스 v1에서 사용할 수 없는 기타 Aurora 기능에 대한 지원이 포함되어 있습니다. 또한 Aurora MySQL 서버리스 v1보다 빠르고 세분화된 크기 조정이 가능합니다.

Aurora MySQL 버전 3에 대한 릴리스 정보

모든 Aurora MySQL 버전 3 릴리스에 대한 릴리스 정보는 Aurora MySQL 릴리스 정보Amazon Aurora MySQL 버전 3에 대한 데이터베이스 엔진 업데이트를 참조하세요.

새로운 병렬 쿼리 최적화

Aurora 병렬 쿼리 최적화가 이제 SQL 작업에 더 많이 적용됩니다.

  • 병렬 쿼리는 이제 768바이트보다 긴 TEXT, BLOB, JSON, GEOMETRY, VARCHARCHAR와 같은 데이터 유형이 포함된 테이블에 적용됩니다.

  • 병렬 쿼리는 파티셔닝된 테이블과 관련된 쿼리를 최적화할 수 있습니다.

  • 병렬 쿼리는 선택 목록 및 HAVING 절에서 집계 함수 호출과 관련된 쿼리를 최적화할 수 있습니다.

이런 향상에 대한 자세한 내용은 Aurora MySQL 버전 3에 병렬 쿼리 클러스터 업그레이드 섹션을 참조하세요. Aurora 병렬 쿼리에 대한 일반적인 정보는 Amazon Aurora MySQL용 Parallel Query 처리 섹션을 참조하세요.

데이터베이스 재시작 시간 단축을 위한 최적화

Aurora MySQL DB 클러스터는 계획된 운영 중단과 예기치 않은 운영 중단 모두에서 가용성이 높아야 합니다.

데이터베이스 관리자는 때때로 데이터베이스 유지 관리를 수행해야 합니다. 이 유지 관리에는 데이터베이스 패치 적용, 업그레이드, 수동 재부팅이 필요한 데이터베이스 파라미터 수정, 인스턴스 클래스 변경에 걸리는 시간을 줄이기 위한 장애 조치 수행 등이 포함됩니다. 이러한 계획된 작업에는 가중 중지가 필요합니다.

그러나 가동 중지는 기본 하드웨어 장애로 인한 예상치 못한 장애 조치 또는 데이터베이스 리소스 제한과 같은 예기치 않은 작업으로 인해 발생할 수도 있습니다. 이러한 모든 계획된 작업과 예기치 않은 작업으로 인해 데이터베이스가 다시 시작됩니다.

Aurora MySQL 버전 3.05 이상에서 데이터베이스 재시작 시간을 단축하는 최적화 기능을 도입했습니다. 이러한 최적화를 통해 최적화를 사용하지 않을 때보다 가동 중지 시간이 최대 65% 줄어들고 재시작 후 데이터베이스 워크로드가 중단되는 일도 줄어듭니다.

데이터베이스를 시작하는 동안 많은 내부 메모리 구성 요소가 초기화됩니다. 이 중 가장 큰 것은 InnoDB 버퍼 풀로, Aurora MySQL에서는 기본적으로 인스턴스 메모리 크기의 75%입니다. 테스트 결과, 초기화 시간은 InnoDB 버퍼 풀의 크기에 비례하므로 DB 인스턴스 클래스 크기에 따라 조정되는 것으로 나타났습니다. 이 초기화 단계에서는 데이터베이스가 연결을 수락할 수 없어 재시작 시 가동 중지가 길어집니다. Aurora MySQL 고속 재시작의 첫 번째 단계는 버퍼 풀 초기화를 최적화하여 데이터베이스 초기화 시간을 줄임으로써 전체 재시작 시간을 줄입니다.

자세한 내용은 Aurora MySQL 최적화, 데이터베이스 재시작 시간 단축 블로그를 참조하세요.