웹사이트 검색

MySQL 8.3 출시: 새로운 기능과 제거된 기능


MySQL 8.3 업데이트: 트랜잭션 그룹화를 위한 태그된 GTID, 향상된 JSON EXPLAIN 형식, 주요 삭제 사항 등.

널리 사용되는 오픈 소스 관계형 데이터베이스 관리 시스템인 MySQL이 최신 버전인 MySQL 8.3을 공개했습니다. 이번 버전은 새로운 기능과 일부 제거 사항을 포함하여 데이터베이스 운영을 보다 효율적으로 만들 것을 약속합니다. 자세히 살펴보겠습니다.

MySQL 8.3의 새로운 기능

태그된 GTID를 사용한 복제

MySQL 8.3의 주요 특징 중 하나는 MySQL 복제 및 그룹 복제에서 태그된 글로벌 트랜잭션 식별자(GTID)의 도입입니다. 이 개선 사항은 트랜잭션 세트를 그룹화하고 쉽게 식별할 수 있도록 해줍니다.

새로운 GTID 형식인 "UUID:TAG:NUMBER"은 특정 트랜잭션 그룹과 연결된 GTID에 대한 고유한 이름 지정이 가능하게 합니다. 이를 통해 사용자는 GTID를 비교하여 데이터 작업과 관리 작업을 구분할 수 있으며, 복제 효율성과 조직 관리가 향상됩니다.

이에 따라, 이 버전에서는 GTID 값을 설정하는 데 필요한 새로운 권한인 “TRANSACTION_GTID_TAG”를 도입하여 데이터베이스 관리자가 누가 GTID를 지정할 수 있는지 제어할 수 있도록 하고, 거래 관리를 더욱 세분화할 수 있습니다.

EXPLAIN에서 JSON 형식 버전 관리

MySQL 8.3는 서버 시스템 변수인 “explain_json_format_version”을 도입하여 사용자가 “EXPLAIN FORMAT=JSON” 문에서 두 가지 JSON 출력 형식 버전 중 하나를 선택할 수 있도록 합니다. 이 기능은 향후 MySQL 옵티마이저 버전과의 호환성을 보장하여 장기적인 사용성을 향상시킵니다.

스레드 풀 플러그인 향상

스레드 풀 플러그인은 이제 MySQL 성능 스키마에 추가 정보를 포함합니다. 새로운 테이블과 열은 스레드 풀 연결 및 상태에 대한 포괄적인 통찰을 제공하여 더 나은 성능 분석을 가능하게 합니다.

기타 주목할 만한 변경 사항

‘binlog_transaction_dependency_tracking’ 시스템 변수의 기본값이 ‘WRITESET’로 변경되었으며, 이는 이 기능이 점진적으로 폐지될 것임을 나타냅니다.

이번 릴리스에서는 사용자가 원하는 링커를 지정할 수 있도록 하는 ‘WITH_LD’ CMake 옵션과 MySQL 엔터프라이즈 데이터 마스킹 및 비식별화 기능 향상이 도입되었습니다.

마지막으로, MySQL 성능 스키마는 성능 조정을 위한 귀중한 자료인 상세한 스레드 풀 연결 정보로 강화되었습니다.

MySQL 8.3

MySQL 8.3의 제거 항목: 오래된 것은 제거

MySQL 8.3에서는 몇 가지 기능과 함수가 제거되면서 보다 효율적이고 현대적인 데이터베이스 관행으로의 전환이 강조됩니다.

주요 C API 함수인 mysql_kill(), mysql_list_fields() 등은 제거되었으며, 유사한 작업을 수행할 수 있는 대안이 제시되었습니다.

또한, 호스트 이름의 내부 캐시를 지우기 위해 사용되던 “FLUSH HOSTS” 명령어는 이전에 더 이상 사용되지 않기로 했었지만, 지금은 완전히 제거되었습니다. 사용자는 호스트 캐시를 지우기 위해 다른 방법을 사용하도록 안내됩니다.

다양한 복제 및 서버 옵션, 예를 들어 „–slave-rows-search-algorithms“ 및 „–log_bin_use_v1_events“도 제거되어, 사용자가 보다 효율적이고 현대적인 방법을 사용하도록 유도하고 있습니다.

마지막으로, MySQL 8.3은 충돌 확인을 위한 쓰기 세트 사용을 행 기반 로깅으로 제한하여 이진 로그 트랜잭션 종속성 추적에 대한 정교한 접근 방식을 보여줍니다.

이 모든 변화에 비추어, 사용자들은 데이터베이스 관리 작업에서 데이터베이스의 전체 잠재력을 활용할 수 있도록 이러한 변화에 익숙해지는 것이 권장됩니다.

자세한 내용은 주요 변경 사항이나 전체 목록을 여기에서 확인하세요.