

# Amazon Aurora MySQL의 제로 다운타임 다시 시작(ZDR)
<a name="AuroraMySQL.Replication.Availability"></a><a name="zdr"></a>

제로 다운타임 다시 시작(ZDR) 기능은 특정 종류의 다시 시작 중에 DB 인스턴스에 대한 활성 연결의 일부 또는 전부를 보관할 수 있습니다. ZDR은 Aurora에서 오류 조건(예: 복제본이 소스보다 너무 멀리 지연되기 시작하는 경우)을 해결하기 위해 자동으로 수행하는 다시 시작에 적용됩니다.

**중요**  
ZDR 메커니즘은 최선의 노력을 기반으로 작동합니다. Aurora MySQL 버전, 인스턴스 클래스, 오류 조건, 호환되는 SQL 작업 및 ZDR이 적용되는 위치를 결정하는 기타 요소는 언제든지 변경될 수 있습니다.

Aurora MySQL 2.x의 ZDR에는 버전 2.10 이상이 필요합니다. ZDR은 Aurora MySQL 3.x의 모든 마이너 버전에서 사용할 수 있습니다. Aurora MySQL 버전 2 및 3에서는 ZDR 메커니즘이 기본적으로 설정되어 있으며 Aurora에는 `aurora_enable_zdr` 파라미터가 사용되지 않습니다.

Aurora는 제로 다운타임 재시작과 관련된 활동을 **이벤트** 페이지에 보고합니다. Aurora는 ZDR 메커니즘을 사용하여 재시작을 시도할 때 이벤트를 기록합니다. 이 이벤트에는 Aurora에서 다시 시작을 수행하는 이유가 명시됩니다. 다시 시작이 완료되면 Aurora는 다른 이벤트를 기록합니다. 이 최종 이벤트는 프로세스의 소요 시간과 다시 시작 중에 유지되거나 삭제된 연결 수를 보고합니다. 데이터베이스 오류 로그를 참조하여 다시 시작 중에 발생한 활동에 대한 자세한 내용을 확인할 수 있습니다.

성공적인 ZDR 작업 후 연결은 그대로 유지되지만 일부 변수와 기능은 다시 초기화됩니다. 다음 유형의 정보는 제로 다운타임 다시 시작으로 인한 다시 시작 중에 보관되지 않습니다.
+ 글로벌 변수 Aurora는 세션 변수를 복원하지만 다시 시작 후 글로벌 변수를 복원하지 않습니다.
+ 상태 변수. 특히 엔진 상태에 의해 보고된 가동 시간 값은 재설정됩니다.
+ `LAST_INSERT_ID`. 
+ 테이블의 인 메모리 `auto_increment` 상태. 인 메모리 자동 증분 상태는 다시 초기화됩니다. 자동 증분 값에 대한 자세한 내용은 [MySQL 참조 매뉴얼](https://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html#innodb-auto-increment-initialization)을 참조하세요.
+ `INFORMATION_SCHEMA` 및 `PERFORMANCE_SCHEMA` 테이블의 진단 정보. 이 진단 정보는 `SHOW PROFILE` 및 `SHOW PROFILES`와 같은 명령 출력에도 표시됩니다.

다음 표에는 버전, 인스턴스 역할 및 클러스터의 DB 인스턴스를 다시 시작할 때 Aurora에서 ZDR 메커니즘을 사용할 수 있는지 여부를 결정하는 기타 상황이 나와 있습니다.


| Aurora MySQL version | 라이터에 ZDR 적용 여부 | 리더에 ZDR 적용 여부 | ZDR 상시 활성화 여부 | 참고 | 
| --- | --- | --- | --- | --- | 
|  2.x, 2.10.0 미만  |  아니요  |  아니요  |  N/A  |  이러한 버전에서는 ZDR을 사용할 수 없습니다.  | 
|  2.10.0\$12.11.0  |  예  |  예  |  예  |  Aurora는 활성 연결에서 진행 중인 모든 트랜잭션을 롤백합니다. 애플리케이션에서 트랜잭션을 다시 시도해야 합니다. Aurora는 TLS/SSL, 임시 테이블, 테이블 잠금 또는 사용자 잠금을 사용하는 모든 연결을 취소합니다.  | 
|  2.11.1 이상  |  예  |  예  |  예  |  Aurora는 활성 연결에서 진행 중인 모든 트랜잭션을 롤백합니다. 애플리케이션에서 트랜잭션을 다시 시도해야 합니다. Aurora는 임시 테이블, 테이블 잠금 또는 사용자 잠금을 사용하는 모든 연결을 취소합니다.  | 
|  3.01\$13.03  |  예  |  예  |  예  |  Aurora는 활성 연결에서 진행 중인 모든 트랜잭션을 롤백합니다. 애플리케이션에서 트랜잭션을 다시 시도해야 합니다. Aurora는 TLS/SSL, 임시 테이블, 테이블 잠금 또는 사용자 잠금을 사용하는 모든 연결을 취소합니다.  | 
|  3.04 이상  |  예  |  예  |  예  |  Aurora는 활성 연결에서 진행 중인 모든 트랜잭션을 롤백합니다. 애플리케이션에서 트랜잭션을 다시 시도해야 합니다. Aurora는 임시 테이블, 테이블 잠금 또는 사용자 잠금을 사용하는 모든 연결을 취소합니다.  | 