5.0 독립형을 4.4로 다운그레이드
다운그레이드를 시도하기 전에 이 문서의 내용을 숙지하세요.
다운그레이드 경로
5.0에서 다운그레이드해야 하는 경우 최신 패치 릴리스인 4.4로 다운그레이드합니다.
MongoDB는 단일 버전 다운그레이드만 지원합니다. 현재 릴리스보다 이전 버전인 릴리스로 다운그레이드할 수 없습니다.
예를 들어, 5.0 시리즈를 4.4 시리즈 배포로 다운그레이드할 수 있습니다. 하지만 4.4 시리즈 배포를 4.2 시리즈 배포로 한 단계 더 다운그레이드하는 것은 지원되지 않습니다.
백업 생성
선택 사항이지만 권장됩니다. 데이터베이스의 백업을 만듭니다.
액세스 제어
배포서버 에 액세스 제어가 활성화되어 있는 경우 다운그레이드 사용자 권한에 데이터베이스 전체에서 인덱스를 나열하고 관리 있는 권한이 포함되어야 합니다. root
역할 을 가진 사용자에게는 필요한 권한이 있습니다.
전제 조건
5.0에서 4.4로 다운그레이드하려면 지속되고 호환되지 않는 기능을 제거하거나 호환되지 않는 구성 설정을 업데이트해야 합니다. 여기에는 다음이 포함됩니다.
1. 클러스터 기본 읽기 및 쓰기 고려
MongoDB 5.0에서는 클러스터 전체 읽기 및 쓰기 고려 기본값이 변경되었으며, MongoDB 4.4로 다운그레이드하면 이러한 기본값이 다시 변경될 수 있습니다. 다운그레이드하기 전에 클러스터의 기본 읽기 및 쓰기 고려를 수동으로 구성하는 것이 좋습니다.
클러스터의 읽기 또는 쓰기 고려에 대한 기본값을 수동으로 구성하려면
setDefaultRWConcern
명령을 사용합니다.클러스터에 중재자가 포함되어 있고 특정 상황에서 캐시 압력을 방지하기 위해 이전에
"Majority"
읽기 고려를 비활성화했다면, 다운그레이드 후--enableMajorityReadConcern false
또는replication.enableMajorityReadConcern: false
를 구성할 수 있습니다.
2. 또는 문자가 .
$
포함된 문서 필드
MongoDB 5.0은 문서 필드 이름에 .
또는 $
문자를 포함하는 기능을 지원합니다. MongoDB 4.4로 다운그레이드하기 전에 .
또는 $
문자가 포함된 필드 이름이 포함된 문서를 모두 삭제해야 합니다.
3. 슬림형 시간대 데이터 파일
MongoDB 5.0은 슬림형 시간대 데이터 파일을 지원합니다. --timeZoneInfo
명령줄 옵션 또는 processManagement.timeZoneInfo
구성 파일 설정으로 MongoDB에 제공된 대로 배포에서 슬림형 시간대 데이터 파일을 사용하는 경우, MongoDB 4.4.7 이상으로 다운그레이드하거나, 그렇지 않으면 이전의 비슬림형 데이터 파일을 사용하도록 시간대 데이터 파일을 되돌려야 합니다.
4. 기능 호환성 버전(fCV) 다운그레이드
독립형의 featureCompatibilityVersion
을 다운그레이드하려면 다음을 수행합니다.
mongo
셸을mongod
인스턴스에 연결합니다.featureCompatibilityVersion
을"4.4"
로 다운그레이드합니다.db.adminCommand({setFeatureCompatibilityVersion: "4.4"}) setFeatureCompatibilityVersion
명령은 내부 시스템 컬렉션에 대한 쓰기를 수행하며 멱등원입니다. 어떤 이유로든 명령이 성공적으로 완료되지 않으면mongod
인스턴스에서 명령을 다시 시도합니다.
5. fCV 5.0 영구 기능 제거
다음 단계는 fCV가 "5.0"
로 설정된 적이 있는 경우에만 필요합니다.
4.4와 호환되지 않는 영구적인 5.0 기능을 모두 제거합니다. 여기에는 다음이 포함됩니다.
- time series 컬렉션
- 모든 time series 컬렉션을 제거합니다.
- 런타임 감사 필터 관리
노드 구성 파일에서
auditLog.runtimeConfiguration
을false
로 설정하여 런타임 감사 필터 관리를 비활성화합니다.로컬 구성 파일에서 이 인스턴스에 대한 감사 필터를 업데이트합니다.
6. 5.0 기능 제거
5.0 기능을 사용하는 모든 영구 기능을 제거합니다. 여기에는 다음이 포함되지만 이에 국한되지는 않습니다.
뷰 정의에
$dateAdd
또는$sampleRate
와 같은 5.0 연산자가 포함된 경우 해당 연산자를 제거해야 합니다. 전체 목록은 새 집계 연산자를 참조하세요.
절차
경고
다운그레이드 절차를 진행하기 전에 전제 조건이 완료되었는지 확인합니다.