버전 1.6에 새로 추가되었습니다.
부터 1.6 start
API 이제 정규 표현식을 사용하여 includeNamespaces
excludeNamespaces
필터링된 동기화에 사용되는 및매개 변수에 대한 필터를 구성할 수 있도록 지원합니다.
구문
필터링된 동기화 를 사용하도록 mongosync
의 데이터베이스 및 collection을 일치시키려면 정규 표현식을 사용할 수 있습니다.
{ "databaseRegex": { "pattern": "<string>", "options": "<string>" }, "collectionsRegex": { "pattern": "<string>", "options": "<string>" } }
필터하다 에 전달하는 정규 표현식 패턴 MongoDB 서버 에서 지원하는 구문을 따라야 합니다.regex
필터하다 문서의 정규 표현식은 regex
가이드에 나열된 options
을(를) 사용합니다. options
는 연결된 옵션의 문자열입니다. 예시 들어 i
및 s
옵션을 지정하려면 "si"
를 options
에 전달합니다. 연결된 옵션의 순서는 중요하지 않습니다.
필터 문서의 정규 표현식은 다음 필드를 사용합니다.
옵션 | 유형 | 설명 |
---|---|---|
| 문서 | 필터와 일치시킬 collection을 지정합니다. |
| 문자열 | 일치에 사용할 정규 표현식 옵션입니다. |
| 문자열 | 일치시킬 정규 표현식 패턴입니다. |
| 문서 | 필터를 일치시킬 데이터베이스를 지정합니다. |
| 문자열 | 일치에 사용할 정규 표현식 옵션입니다. |
| 문자열 | 일치시킬 정규 표현식 패턴입니다. |
이러한 옵션은 includeNamespaces
및 excludeNamespaces
매개변수 모두와 함께 사용할 수 있습니다.
사용 사례
정규 표현식을 사용하면 여러 데이터베이스 또는 collection을 단일 패턴으로 일치시킬 수 있습니다. 이름이 비슷한 데이터베이스 또는 컬렉션을 여러 개 일치시키려는 경우 개별 데이터베이스 또는 컬렉션 그룹에 대한 일련의 필터를 만드는 것보다 정규 표현식이 더 쉬울 수 있습니다.
세부 정보
정규 표현식 옵션 예시
databaseRegex
및 collectionsRegex
은 각각 정규 표현식 옵션을 구성하는 데 사용할 수 있는 options
필드 지원합니다. 내부적으로 mongosync
는 필터하다 와 옵션을 $regex
연산자 에 전달합니다. 해당 연산자 사용할 수 있는 옵션은 Filtred Sync와 함께 사용할 수 있습니다.
예시 들어, 이 필터하다 accounts_
문자열로 시작하는 sales
데이터베이스 의 컬렉션과 일치합니다. 또한 이 필터하다 여러 줄 값이 있는 문자열의 경우 각 줄의 시작 또는 끝에 있는 문자를 일치시키는 m
옵션과 s
옵션을 지정하여 점 문자가 개행 문자를 포함한 모든 문자와 일치하도록 합니다.
"includeNamespaces": [ { "database": "sales", "collectionsRegex": { "pattern": "^accounts_.+?$", "options": "ms" } } ]