피드로 돌아가기
ALGORITHM=INSTANT on Aurora: Which ALTER TABLE Operations Are Truly Zero-Downtime
Dev.toDev.to
Database

ALGORITHM=INSTANT 통한 Aurora MySQL Zero-Downtime 스키마 변경 구현

ALGORITHM=INSTANT on Aurora: Which ALTER TABLE Operations Are Truly Zero-Downtime

pranith m2026년 4월 25일4intermediate

Context

기존 ALTER TABLE 작업 시 발생하는 Table Lock으로 인한 Read/Write 차단 문제 분석. 특히 트래픽 정점 상황에서 스키마 변경 시 발생하는 서비스 다운타임 및 Revenue 손실 리스크 해결 필요.

Technical Solution

  • Metadata Lock 점유 시간 최소화 및 Background Thread 기반 데이터 수정 구조 채택
  • 테이블 내부 Metadata 구조만 즉시 업데이트하여 동시 DML 연산 허용 설계
  • ALGORITHM=INSTANT 적용을 통한 Error 1412(Table Lock) 발생 원천 차단
  • innodb_instant_alter_column_threshold 설정을 통한 Column operation 강제 적용 제어
  • aurora_alter_table_wait_for_commit 파라미터를 통한 동시 트랜잭션 영향도 조절

1. Aurora MySQL

8.

0.12 이상 버전 사용 여부 확인

2. information_schema.innodb_tables 내 instant_cols 수치로 실제 적용 여부 검증

3. Generated Column 및 Default 값 변경 등 INSTANT 미지원 케이스 사전 식별

4. 대규모 테이블의 경우 Background I/O 및 CPU 부하 측정을 위한 Staging 테스트 수행

원문 읽기