MySQL 8.0에서 추가된 모든 기능

MySQL 8.0에서 추가된 모든 기능 – 라우터

Estimated reading: 1 minute 36 views

1. 마지막으로 알려진 메타데이터 서버 주소를 지속적으로 저장

[원본제공링크 1]

MySQL Router는 클러스터의 메타데이터 서버 주소를 지속적으로 저장하여, 네트워크 장애나 서버 오류 발생 시에도 안정적인 연결을 유지하고 신속한 복구를 지원합니다.

2. 성공적인 연결 시 max_connect_errors 재설정

[원본제공링크 1]

MySQL 서버는 특정 호스트에서 연속적으로 지정된 횟수만큼 연결 오류가 발생하면 해당 호스트의 추가 연결을 차단합니다. 그러나 해당 호스트에서 성공적인 연결이 이루어지면, 오류 카운트가 0으로 재설정되어 다시 정상적인 연결이 가능합니다.

3. MySQL 서버 소스 트리의 일부로 라우터 빌드

[원본제공링크 1]

MySQL 8.0.13부터 MySQL RouterMySQL 서버 소스 코드 트리의 일부로 포함되어 있습니다. 따라서 MySQL 서버를 컴파일하면 MySQL Router도 함께 빌드됩니다. 이는 -DWITH_ROUTER=ON 설정에 기반하며, 기본적으로 활성화되어 있습니다.

4. mysqlrouter_plugin_info 도구 추가

[원본제공링크 1]

MySQL Router는 mysqlrouter_plugin_info라는 디버깅 도구를 제공하여, 플러그인의 잠재적 충돌 및 일반적인 문제를 검사할 수 있습니다. 이를 통해 플러그인의 호환성과 안정성을 향상시킬 수 있습니다.

5. 메타데이터 캐시 TTL을 300초에서 500밀리초로 감소

[원본제공링크 1]

MySQL Router의 메타데이터 캐시(Time To Live, TTL) 설정은 클러스터 구성 변경 사항을 얼마나 빠르게 반영할지를 결정합니다. TTL 값을 300초에서 500밀리초로 줄이면, 라우터가 클러스터의 상태 변화를 거의 실시간으로 감지하고 반영할 수 있습니다.

6. 라우팅 전략 추가

[원본제공링크 1]

MySQL Router는 클라이언트 연결을 백엔드 MySQL 서버로 효율적으로 분산하기 위해 다양한 라우팅 전략을 제공합니다. 이를 통해 애플리케이션의 요구 사항과 시스템 아키텍처에 맞게 트래픽을 관리할 수 있습니다.

7. --report-host 부트스트랩 옵션 추가

[원본제공링크 1]

MySQL Router는 –report-host라는 부트스트랩 옵션을 도입하여, 라우터의 외부에서 접근 가능한 호스트명을 InnoDB 클러스터의 메타데이터 저장소에 등록할 수 있게 되었습니다. 이를 통해 클라이언트 애플리케이션이 올바른 주소로 라우터에 연결할 수 있습니다.

8. --account-host 부트스트랩 옵션 추가

[원본제공링크 1]

MySQL Router는 –account-host라는 부트스트랩 옵션을 도입하여, 부트스트랩 과정에서 생성되는 MySQL 사용자 계정의 호스트 패턴을 지정할 수 있게 되었습니다. 이를 통해 MySQL Router가 특정 호스트나 도메인에서만 MySQL 서버에 접근하도록 제한할 수 있습니다.

9. PRIMARY에서 SECONDARY로 변경된 서버 노드에 연결된 클라이언트 연결 해제

[원본제공링크 1]

MySQL Router는 클러스터 내 서버 노드의 역할 변경 시, 클라이언트 연결을 적절하게 관리할 수 있는 옵션을 제공합니다. 특히, disconnect_on_promoted_to_primary 설정을 통해 SECONDARY에서 PRIMARY로 승격된 노드에 대한 기존 클라이언트 연결을 해제할지 여부를 결정할 수 있습니다.

10. SIGHUP을 통한 로그 로테이션

[원본제공링크 1]

MySQL Router는 SIGHUP 신호를 수신하면 현재의 로그 파일을 닫고 새로운 로그 파일을 생성하여 로그 순환을 수행합니다. 이를 통해 로그 파일의 크기를 관리하고, 시스템의 안정성을 유지할 수 있습니다.

11. HTTP 서버 플러그인

[원본제공링크 1]

MySQL Router 8.0.16부터 HTTP 서버 플러그인이 도입되어, 라우터 내에서 HTTP 서버를 실행할 수 있게 되었습니다. 이를 통해 모니터링 및 관리 기능을 위한 REST API를 제공하며, TLS를 통한 암호화된 연결과 인증 기능도 지원합니다.

12. 단일/다중 PRIMARY 그룹 복제를 위한 유연한 지원

[원본제공링크 1]

MySQL Group Replication은 단일 PRIMARY 모드다중 PRIMARY 모드를 지원하며, 애플리케이션의 요구 사항에 따라 유연하게 선택할 수 있습니다. MySQL 8.0.13부터는 실행 중인 그룹에서 모드를 전환할 수 있는 함수가 제공되어, 가동 중단 없이 모드 변경이 가능합니다.

13. 새로운 mysqlrouter_keyring 유틸리티

[원본제공링크 1]

MySQL Router 8.0.18부터 mysqlrouter_keyring이라는 명령줄 유틸리티가 도입되어, MySQL Router의 키링(keyring)을 관리할 수 있게 되었습니다. 이를 통해 키링의 초기화, 사용자 계정 정보 관리, 키링 항목의 내보내기 및 가져오기 등의 작업을 수행할 수 있습니다.

14. 라우터 로그에서 초단위 미만 타임스탬프 해상도 지원

[원본제공링크 1]

MySQL Router는 로그 메시지의 타임스탬프를 밀리초 또는 마이크로초 단위로 기록할 수 있는 기능을 제공합니다. 이를 통해 로그의 시간 해상도를 높여, 초 단위보다 더 정밀한 시간 정보를 기록할 수 있습니다.

15. 라우터에서 ReplicaSet 지원

[원본제공링크 1]

MySQL Router는 InnoDB ReplicaSet과의 통합을 지원하여, 클라이언트 애플리케이션이 ReplicaSet의 적절한 인스턴스에 효율적으로 연결되도록 돕습니다. 이를 통해 읽기 및 쓰기 작업의 부하 분산과 고가용성 구성이 가능합니다.

16. 라우터에서 메타데이터 업그레이드 처리

[원본제공링크 1]

MySQL InnoDB Cluster의 메타데이터 스키마가 업그레이드되면, MySQL Router도 이에 맞게 업그레이드되어야 합니다. 이 과정에서 MySQL Shell의 dba.upgradeMetadata() 함수를 사용하여 메타데이터를 최신 버전으로 업데이트하고, MySQL Router 인스턴스의 호환성을 유지해야 합니다.

17. 기존 계정 재사용을 허용하는 새 부트스트랩 옵션 (--account)

[원본제공링크 1]

MySQL Router 8.0.19부터 –account 옵션이 도입되어, 부트스트랩 과정에서 기존의 MySQL 사용자 계정을 지정하고 재사용할 수 있게 되었습니다. 이를 통해 불필요한 계정 생성을 방지하고, 여러 Router 인스턴스에서 동일한 계정을 공유하여 관리의 효율성을 높일 수 있습니다.

18. MySQL InnoDB Cluster 메타데이터를 이용한 HTTP 컴포넌트 인증

[원본제공링크 1]

MySQL Router의 HTTP 컴포넌트는 InnoDB Cluster 메타데이터에 저장된 계정을 통해 인증을 수행할 수 있습니다. 이를 통해 중앙에서 HTTP 인터페이스의 계정을 관리하고, 클러스터의 메타데이터를 활용하여 인증 절차를 간소화할 수 있습니다.

19. 새로운 pid-file 옵션

[원본제공링크 1]

MySQL Router 8.0.20부터 –pid-file 옵션이 도입되어, 프로세스 ID(PID) 파일의 저장 위치를 지정할 수 있게 되었습니다. 이를 통해 시스템 관리자는 MySQL Router의 프로세스 관리를 더욱 효율적으로 수행할 수 있습니다.

20. 새로운 “note” 및 “system” 로그 레벨

[원본제공링크 1]

MySQL Router는 기존의 로그 레벨에 더해 “note”“system” 로그 레벨을 도입하여, 로그 메시지의 중요도와 상세도를 더욱 세분화하여 관리할 수 있게 되었습니다.

21. 사용자가 설정할 수 있는 로그 파일명

[원본제공링크 1]

MySQL Router는 로그 파일의 저장 위치와 이름을 사용자가 구성할 수 있도록 지원합니다. 이를 통해 로그 파일의 관리와 접근이 더욱 용이해집니다.

22. 애플리케이션에서 노드 숨기기 지원

[원본제공링크 1]

MySQL Router는 InnoDB Cluster특정 인스턴스를 애플리케이션 트래픽에서 제외할 수 있는 기능을 제공합니다. 이를 통해 유지 보수 작업이나 백업 수행 시 해당 인스턴스를 클라이언트 연결 대상에서 제외하여 시스템의 안정성을 높일 수 있습니다.

Leave a Comment



이 문서 공유

MySQL 8.0에서 추가된 모든 기능 – 라우터

링크 복사

CONTENTS