# Vitess v23.0.7

> Storage & Data · 2026-10-01

TLS 인증서 폐기 목록 검증과 엄격한 테이블 ACL 적용이 강화된 보안 유지보수 릴리스입니다. vtctld의 기존 HTTP API와 일부 Go API가 제거되고, API 관련 플래그의 동작과 압축 설정의 의미도 바뀌어 해당 기능을 사용하는 환경에서는 호환성을 확인해야 합니다.

## 조치 필요
- **[security]** 인증서 폐기 목록 설정 시 gRPC TLS 연결
  - `--tablet-grpc-crl`, `--vtgate-grpc-crl`, `--vtctld-grpc-crl`을 비롯한 `*-grpc-crl` 플래그를 설정했지만 클라이언트 인증서와 인증 기관이 모두 없는 gRPC 클라이언트는 이제 시스템 루트로 서버를 검증하는 TLS 연결을 맺습니다. 인증서 폐기 목록을 무시한 평문 연결은 사용하지 않습니다.
- **[security]** 확인할 수 없는 테이블의 엄격한 ACL 거부
  - vttablet은 문장이 참조하는 테이블을 확인하지 못하면 엄격한 테이블 ACL에서 검사를 건너뛰지 않고 문장을 거부합니다. 이 동작은 `--queryserver-config-strict-table-acl`과 `--queryserver-config-acl-exempt-acl` 설정에 적용됩니다.
- **[security]** vtctld `/api/` HTTP API 제거
  - vtctld가 `/api/`에서 제공하던 HTTP API를 제거했습니다.
- **[breaking]** `--compression-level` 값 `1`의 의미 변경
  - `--compression-level`에서 값 `0`과 `1`은 빠른 압축기를 선택하며, 기본값 `1`도 여기에 해당합니다. 값 `1`을 해시 체인 탐색 깊이 1로 사용하던 동작이 바뀌었습니다.
- **[breaking]** vtgate 업그레이드 전 대상 `SET` 하위 쿼리 제한
  - 모든 vtgate가 업그레이드될 때까지 대상 `SET` 문장에서 하위 쿼리를 피하거나, 먼저 vtgate를 업그레이드해야 합니다.
- **[breaking]** vtctld Go API 제거
  - Go 패키지를 사용하는 코드에서 `vtctld.InitVtctld`, `vtctld.ActionRepository`, `vtctld.ActionResult`, `vtctld.TabletWithURL`을 더 이상 사용할 수 없습니다.

## 미리 준비
- **[deprecated]** vtctld API 관련 플래그 사용 중단
  - v26에서 제거 예정
  - API를 설정하던 vtctld와 vtcombo의 `--cell`, `--proxy-tablets`, `--action-timeout`, `--tablet-health-keep-alive` 플래그는 이제 동작하지 않는 사용 중단 항목입니다. 이 플래그들은 v26에서 제거될 예정입니다.

## 그 밖에 기록된 변경
- 12 (value_changed 7, added 2, defect_corrected 2, constraint_changed 1)

[분석 자세히 보기](https://ratatosk.io/ko/releases/vitess/v23.0.7)

[원본 릴리스 노트](https://github.com/vitessio/vitess/releases/tag/v23.0.7)
