SharePoint Server에서 RBS 유지 관리

적용 대상:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

RBS와 연관된 대부분의 유지 관리 작업은 SharePoint Server에서 RBS 유지 관리자(SQL Server의 도구)를 사용하여 수행합니다. RBS 유지 관리자는 SharePoint Server RBS 배포에 대해 정기적인 가비지 수집 및 기타 유지 관리 작업을 수행합니다. Windows 작업 스케줄러 또는 SQL Server 에이전트에서 RBS를 사용하는 각 데이터베이스에 대해 이러한 작업을 예약할 수 있습니다. RBS 유지 관리자는 명령줄 매개 변수 또는 XML 파일을 통해 프로비전해야 합니다. 미러된 데이터베이스 또는 복제된 데이터베이스의 경우에는 단일 인스턴스에 대해 RBS 유지 관리자를 실행할 수 있습니다.

RBS 가비지 수집 구성

SharePoint Server은 참조되지 않거나 삭제된 BLOB 데이터를 자동으로 제거 대상으로 표시합니다. 또한 SharePoint Server은 데이터 제거 시 해당 콘텐츠 데이터베이스에서 SharePoint Server에 의해 저장된 BLOB ID 목록을 확인하여 BLOB에 대한 참조 개수를 계산합니다. RBS 저장소 테이블에는 있지만 콘텐츠 데이터베이스에는 없는 BLOB 참조는 SharePoint Server에 의해 삭제된 것으로 간주되어 제거 대상으로 표시됩니다. 콘텐츠 데이터베이스에 없으며 고아 정리 기간(이 문서 뒷부분에서 설명함) 이전에 작성된 BLOB 역시 SharePoint Server에 의해 삭제된 것으로 간주되며 제거 대상으로 표시됩니다.

SharePoint Server에서는 콘텐츠 데이터베이스의 RBS 열에서 BLOB 참조를 테이블로 만들기 때문에 모든 RBS 열에는 유효한 인덱스가 있어야 열을 RBS에서 등록할 수 있습니다.

SQL Server RBS 유지 관리자 도구는 SharePoint Server에서 제거 대상으로 표시한 항목을 제거합니다. 일반 데이터베이스 작업에 대한 영향을 줄이기 위해 사용량이 적은 시간 동안 정리 작업이 수행되도록 예약해야 합니다.

RBS 가비지 수집은 다음의 세 단계로 수행됩니다.

  • 참조 검색. 첫 단계에서는 RBS의 자체 내부 테이블이 있는 SharePoint Server 콘텐츠 데이터베이스의 RBS 테이블 내용을 비교하여 더 이상 참조되지 않는 BLOB를 확인합니다. 참조되지 않는 BLOB는 삭제하도록 표시됩니다.

  • 삭제 전파. 다음 단계에서는 garbage_collection_time_window 값보다 오랫동안 삭제하도록 표시된 BLOB를 확인하여 BLOB 저장소에서 삭제합니다.

  • 고아 정리. 마지막 단계에서는 BLOB 저장소에 BLOB이 있지만 RBS 테이블에 없는지 여부를 결정합니다. 그런 다음 분리된 BLOB이 삭제됩니다.

RBS 가비지 수집 구성

다음 RBS 유지 관리자 설정 및 데이터베이스 설정을 지정하여 가비지 수집을 구성할 수 있습니다.

  • 유지 관리자 일정. 이 설정은 RBS 유지 관리자를 실행할 빈도를 결정합니다.

  • 작업 기간. 이 설정은 단일 RBS 유지 관리자 작업을 실행할 수 있는 최대 시간을 결정합니다. 기본 설정은 2시간입니다.

RBS 유지 관리자의 작업이 일반 작업에 끼치는 영향을 최소화하도록 RBS 유지 관리자를 구성해야 합니다. 설정 구성 방법과 같은 데이터베이스 가비지의 수집 설정에 대한 자세한 내용은 RBS 유지 관리자 실행을 참조하세요.

RBS 및 BLOB 저장소 일관성 확인

RBS 유지 관리자는 RBS BLOB 참조의 무결성을 확인하고 오류가 발견되면 수정합니다. 유지 관리자는 데이터베이스에 대해 다양한 일관성 확인을 수행하는데, 여기에는 RBS 열에 대한 인덱스가 있는지 확인하고 SharePoint Server에서 참조하는 모든 BLOB가 RBS에 있는지 확인하는 작업이 포함됩니다.

보조 테이블 일관성 확인에서는 RBS 보조 테이블의 상태가 일정한지를 확인합니다. 수행되는 확인 작업은 다음과 같습니다.

  • 각 RBS 테이블 열에 유효한 인덱스가 있는지 확인

  • RBS 테이블 열이 있고 사용하도록 설정된 유효한 인덱스가 있으며 열 유형이 올바른지 확인

다음 일관성 확인은 해제할 수도 있지만, 이러한 확인을 통해 RBS 저장소의 일관성을 확인할 수 있으므로 해제하지 않는 것이 좋습니다. 기본적으로는 다음과 같은 일관성 확인을 수행할 수 있습니다.

  • SharePoint Server에서 참조되는 모든 BLOB가 RBS 테이블에 있는지 확인

  • 사용 중이면서 동시에 삭제하도록 표시된 BLOB가 없는지 확인

발견된 모든 문제는 기록되며 RBS 유지 관리자는 누락된 인덱스 항목을 만들거나, 누락된 열의 등록을 취소하거나, 사용 중인 BLOB를 삭제하지 않도록 표시하여 문제를 해결합니다.

RBS 유지 관리자 실행

RBS에서는 RBS 유지 관리자를 실행하기 전에 RBS를 사용하는 각 데이터베이스에 대한 연결 문자열을 정의해야 합니다. 이 문자열은 일반적으로 설치 중에 만들어진 RBS 설치 경로>\Microsoft SQL 원격 Blob Storage 10.50\Maintainer 폴더의 구성 파일에< 저장됩니다. RBS 유지 관리자 실행에 나와 있는 명령줄 매개 변수와 함께 Microsoft.Data.SqlRemoteBlobs.Maintainer.exe 프로그램을 실행하면 RBS 유지 관리자를 수동으로 실행할 수 있습니다.

RBS를 사용하는 모든 데이터베이스에 대해 각각 별도의 RBS 유지 관리 작업을 예약해야 합니다. 다음 단계에서는 RBS 유지 관리자 작업을 예약하는 방법을 설명합니다.

RBS 유지 관리자 작업을 예약하려면

  1. RBS를 설치한 폴더에 대한 쓰기 권한이 있는지 확인합니다.

  2. 수행할 RBS 유지 관리자 작업의 _<RBS 설치 디렉터리>_Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config 파일에 연결 문자열을 추가합니다. RBS 설치 관리자는 설치 중에 제공된 연결 정보를 사용하여 RBSMaintainerConnection이라는 연결 문자열 하나를 만듭니다. 그러나 모든 추가 데이터베이스에 대해 새 연결 문자열을 추가해야 합니다.

    Windows 인증을 사용하는 경우에는 연결 문자열을 암호화할 필요가 없습니다. 다음 명령을 실행하여 암호화되지 않은 연결 문자열을 추가할 수 있습니다.

    -pef connectionStrings 를 aspnet_regiis. -prov DataProtectionConfigurationProvider

    rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config

    SQL 인증을 사용하는 경우에는 RBS 유지 관리자 연결 문자열을 암호화된 형식으로 저장해야 합니다. 따라서 연결 문자열을 추가하려면 새 문자열을 암호화하거나 모든 연결 문자열의 암호를 해독해야 합니다. 암호화된 문자열은 한 번에 하나씩 추가해야 하지만, %windir%\Microsoft.net\Framework\ 버전 \Aspnet_regiis.exe 도구를 사용하면 모든 연결 문자열의 암호를 동시에 해독할 수 있습니다. 그러나 Microsoft .NET Framework 일부로 배포되는 %windir%\Microsoft.net\Framework\ <버전>\Aspnet_regiis.exe 도구를 사용하여 모든 연결 문자열의 암호를 동시에 해독할 수 있습니다.

    연결 문자열의 암호를 해독하여 결과를 Web.config 파일에 저장하려면 다음 명령을 실행합니다.

    rename Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config web.config

    aspnet_regiis -pdf connectionStrings

    그런 후에 다음 명령을 사용하면 문자열을 암호가 해독된 형식으로 추가하고 파일을 암호화하여 이름을 Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config로 바꿀 수 있습니다.

    -pef connectionStrings 를 aspnet_regiis. -prov DataProtectionConfigurationProvider

    rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config

  3. 해당하는 각 데이터베이스에 대해 RBS 유지 관리자 작업을 실행하는 Windows 스케줄러 작업을 만듭니다. GUI 모드에서 RBS 설치 관리자를 실행하면 Windows 스케줄러 작업이 자동으로 생성됩니다. 그러나 명령줄 모드에서 RBS 설치 관리자를 실행한 경우 RBS 유지 관리자를 실행하도록 작업을 예약할 때마다 다음 단계를 따라야 합니다.

  • 시작 메뉴에서 관리 도구, 작업 스케줄러를 차례로 클릭합니다.

  • 작업 메뉴에서 작업 만들기를 클릭합니다.

  • 동작 탭에서 새로 만들기를 클릭합니다.

  • 새 작업 대화 상자의 작업 드롭다운 목록에서 프로그램 시작을 선택합니다.

  • 설정 아래의 프로그램/스크립트 상자에서 유지 관리자 이진 파일 <RBS 설치 디렉터리>\Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe 찾은 다음 인수 추가(선택 사항) 텍스트 상자에서 선택적 인수를 추가합니다. 다음 기본값이 설치 관리자를 통해 생성됩니다.

    <-ConnectionStringName RBSMaintainerConnection>, <-Operation GarbageCollection ConsistencyCheck ConsistencyCheckForStores>, <-GarbageCollectionPhases rdo>, <-ConsistencyCheckMode r>, <-TimeLimit 120>

  • 확인을 클릭합니다.

  • 트리거 탭에서 새로 만들기를 클릭합니다.

  • 새 트리거 대화 상자에서 작업을 예약한 다음 확인을 클릭합니다. 시스템 작업량이 적은 시간에 작업을 실행하도록 예약하는 것이 좋습니다.

  • 일반 탭의 보안에서 사용자 계정에 작업을 실행하기 위한 적절한 권한이 있는지 확인합니다. 사용자 또는 그룹 변경을 클릭하면 권한을 변경할 수 있습니다.

  • 일반 탭의 사용자의 로그온 여부에 관계없이 실행을 클릭하고 확인을 클릭합니다.

참고 항목

개념

SharePoint Server의 RBS 개요

SharePoint Server 팜에서 FILESTREAM을 사용하여 RBS 설치 및 구성

SharePoint Server에서 FILESTREAM과 함께 RBS를 사용하도록 콘텐츠 데이터베이스 설정

SharePoint Server에서 RBS로 또는 RBS에서 콘텐츠 마이그레이션

SharePoint Server에서 콘텐츠 데이터베이스의 RBS 해제