MongoDB 7.0의 호환성 변경 사항
이 페이지의 내용
이 페이지에서는 MongoDB 이전 버전과의 호환성에 영향을 줄 수 있는 MongoDB 7.0에 도입된 변경 사항에 대해 설명합니다.
MongoDB 7.0은 Major Release입니다. 따라서 MongoDB Atlas 배포와 온프레미스 배포를 모두 지원합니다. MongoDB 7.0에는 MongoDB Rapid Release 6.1, 6.2, 6.3에 도입된 변경 사항이 포함됩니다. 이 페이지에서는 이러한 Rapid Release와 MongoDB 7.0에 도입된 호환성 변경 사항을 설명합니다.
Major Release와 Rapid Release의 차이점에 학습 보려면 MongoDB 버전 관리를 참조하세요.
MongoDB 7.0에서 다운그레이드하는 방법에 대한 자세한 내용은 7.0에서 6.0으로 다운그레이드를 참조하세요.
지원 중단
더 이상 사용되지 않습니다. | 설명 |
---|---|
storageDetails | 버전 7.0에서 더 이상 사용되지 않습니다. |
중단된 무료 모니터링
MongoDB 7.0부터는 무료 모니터링이 사용 중단됩니다. 다음은 사용할 수 없습니다.
cloud.monitoring.free
구성 옵션--enableFreeMonitoring
server parameterdb.enableFreeMonitoring()
명령db.disableFreeMonitoring()
명령setFreeMonitoring
명령
Queryable Encryption 일반 가용성
MongoDB 7.0에서는 동일성 쿼리를 사용하는 Queryable Encryption이 정식 출시되었습니다. 정식 출시 버전이 개선되면서 이제 Queryable Encryption Public Preview와는 호환이 되지 않습니다. 정식 버전이 출시된 만큼 앞으로 해당 기능을 사용하지 않습니다.
Public Preview와 정식 출시 간의 서버 및 드라이버 호환성
동일성 쿼리와 함께 Queryable Encryption을 사용하려면 MongoDB 서버가 버전 7.0 이상이어야 하며 드라이버가 7.0과 호환되어야 합니다. MongoDB 6.x에 포함된 Queryable Encryption Public Preview를 계속 사용하는 경우 서버는 버전 6.x를 유지하고 드라이버는 6.x와 호환되어야 합니다. 7.0 서버에서는 MongoDB 6.x 호환 드라이버를 사용하거나 6.x 서버에서 7.0 호환 드라이버를 사용할 수 없습니다. 이 작업을 시도하면 오류가 발생합니다.
업그레이드를 더 쉽게 하기 위해 MongoDB 7.0 드라이버는 MongoDB 6.x 드라이버에서 생성된 데이터를 해독할 수 있습니다. 업그레이드 옵션은 다음 섹션을 참조하세요.
새로 시작(권장)
가능하면 MongoDB 6.x에서 Queryable Encryption Public Preview로 생성한 컬렉션을 마이그레이션하지 말고 새 컬렉션을 만듭니다:
MongoDB 서버와 드라이버를 7.0으로 업그레이드합니다.
이전 컬렉션과 다른 이름으로 암호화된 새 컬렉션을 구성합니다.
새 데이터를 삽입하거나 로컬 사본이 있는 경우 기존 데이터의 암호화되지 않은 버전을 삽입합니다.
이전 버전 6.x 컬렉션을 제거합니다.
마이그레이션
새 데이터를 사용할 수 없거나 기존 데이터의 암호화되지 않은 버전이 없는 경우:
MongoDB 서버 및 드라이버를 7.0으로 업그레이드하세요.
7.0 호환 드라이버를 사용하여 암호화된 컬렉션을 쿼리하여 암호를 해독합니다.
출력을 로컬에 저장합니다.
암호화된 새 컬렉션을 구성하고 데이터를 수집합니다.
경고
mongoexport
및mongodump
작업은 컬렉션을 해독하지 않습니다. 해독된 데이터를 출력하려면 드라이버에서 컬렉션을 쿼리해야 합니다.MongoDB 7.0 호환 드라이버는 MongoDB 6.x 호환 드라이버로 암호화된 데이터에서 암호화된 필드를 쿼리할 수 없습니다. 데이터를 해독하려면 암호화되지 않은 필드를 쿼리하거나 전체 컬렉션을 쿼리합니다.
이전 버전과 호환되지 않는 기능
다음 7.0 기능은 이전 버전의 MongoDB와 호환되지 않습니다. MongoDB 7.0에서 이전 버전으로 다운그레이드하려면 다음 기능을 사용하는 데이터를 제거해야 합니다.
범위 인덱스가 있는
encryptedFields
컬렉션fCV 7.0 이상이 필요한 복합 와일드카드 인덱스. 하나 이상의 복합 와일드카드 인덱스를 사용하는 경우 7.0 이전 버전에서는
mongod
가 시작되지 않습니다.changeStreamPreAndPostImages
를 활성화한 컬렉션이 있는 구성 서버time series 컬렉션의 부분 필터가 있는 세컨더리 TTL 인덱스
사용자 지정 버킷팅 매개 변수를 사용하는 time series 컬렉션
노드 내 인증
MongoDB 7.0부터는 속성 또는 확장 값으로 식별되는 클러스터 멤버로 X.509 인증서를 인증하도록 서버를 구성할 수 있습니다. 롤링 업그레이드 중에 대체 인증서를 허용하도록 이 구성을 재정의할 수도 있습니다.
MongoDB 6.0으로 다운그레이드하려면 인증서 로테이션 절차를 수행하여 net.tls.clusterAuthX509
설정을 해제하고 클러스터 멤버십 인증서를 DC, O 및 OU 속성이 일치하는 인증서로 로테이션합니다.
이 작업이 완료되면 클러스터를 다운그레이드할 수 있습니다.
Time Series
Time series 컬렉션에서 부분 TTL 인덱스를 제거합니다.
새 인덱스 매개 변수를 사용하여 컬렉션을 제거하거나 수정합니다. 경우에 따라
collMod
를 사용하여 레거시 세분성 설정으로 전환할 수 있으며, 그렇지 않은 경우 다운그레이드하기 전에 컬렉션을 제거해야 합니다.
cluster 구성
활성 setClusterParameter
매개 변수 작업으로 인해 기능 호환성 버전(fCV)이 성공적으로 완료되지 않습니다.
암호화된 멀티 맵(EMM)
다운그레이드하기 전에 encryptedFields
컬렉션 옵션을 사용하는 컬렉션을 제거합니다.
와일드카드 인덱스
fCV 7.0 이상이 필요한 복합 와일드카드 인덱스. 하나 이상의 복합 와일드카드 인덱스를 사용하는 경우 7.0 이전 버전에서는 mongod
가 시작되지 않습니다.
OIDC 액세스 토큰 인증 동작
MongoDB 7.0 부터 시작됩니다. OIDC 액세스 토큰에 대해 하나의 audience
oidcIdentityProviders 필드 만 지정할 수 있습니다. 빈 배열이나 여러 문자열의 배열이 있는 audience
필드는 유효하지 않습니다.
자세한 내용은 oidcIdentityProviders 필드를 참조하세요.