RBS 유지 관리(SharePoint Server 2010)

 

적용 대상: SharePoint Foundation 2010, SharePoint Server 2010

마지막으로 수정된 항목: 2016-11-30

이 문서에서는 Microsoft SharePoint Server 2010에서 RBS(원격 Blob 저장소)와 연관된 유지 관리 작업을 수행하는 방법을 설명합니다.

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

이 문서의 내용

  • 가비지 수집

  • RBS 및 BLOB 저장소 일관성 확인

  • RBS 유지 관리자 실행

가비지 수집

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

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

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

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

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

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

  • 고아 정리. 마지막 단계에서는 BLOB 저장소에는 있지만 RBS 테이블에는 없는 BLOB(고아 BLOB)를 확인하여 삭제합니다.

RBS 가비지 수집 구성

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

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

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

RBS 유지 관리자의 작업이 일반 작업에 주는 영향을 최소화하도록 RBS 유지 관리자를 구성해야 합니다. 설정 구성 방법을 비롯한 데이터베이스 가비지 수집 설정에 대한 자세한 내용은 RBS 유지 관리자 실행(영문일 수 있음)(https://go.microsoft.com/fwlink/?linkid=199638&clcid=0x412)(영문일 수 있음)을 참조하십시오.

RBS 및 BLOB 저장소 일관성 확인

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

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

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

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

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

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

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

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

RBS 유지 관리자 실행

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

매개 변수 이름 설명 필수 여부

ConnectionStringName <문자열 이름>

구성 파일의 연결 문자열 이름입니다.

RBSMaintainerConnection은 RBS 설치 중에 만들어지는 기본 이름입니다.

Operation <공백으로 구분된 수행할 작업 목록>

수행할 가비지 수집 작업입니다. 이 매개 변수는 1-4개의 인수를 사용합니다. ForceFinalize 값은 다른 작업과 조합하여 사용할 수 없습니다.

ConsistencyCheck

GarbageCollection

Maintenance

ConsistencyCheckForStores

ForceFinalize

GarbageCollectionPhases <단계>

수행할 가비지 수집 단계입니다. 이 매개 변수를 사용하여 가비지 수집을 실행하거나 완료합니다. 값은 공백이 없는 하나 이상의 문자여야 합니다.

r - 참조 검색

d - 삭제 전파

o - 고아 정리

예(가비지 수집을 수행하려는 경우)

ConsistencyCheckMode <c, r 또는 b>

수행할 일관성 확인 유형을 지정합니다.

c - 확인만 수행합니다.

r  - 확인을 수행하고 발견된 문제점을 수정합니다.

b  - 확인, 문제점 수정 및 내부 데이터 구조 재작성을 수행합니다.

예(일관성 확인을 수행하려는 경우)

ConsistencyCheckExtent <m 또는 c>

일관성 확인 범위를 지정합니다.

m - 메타데이터만 확인하고, 개별 BLOB는 확인하지 않고 그대로 둡니다. 기본 매개 변수입니다.

c - 전체 확인을 수행합니다.

지정하지 않는 경우 m이 사용됩니다.

ConsistencyCheckForStores <공백으로 구분된 BLOB 저장소 이름 목록>

일관성을 확인할 BLOB 저장소 이름이 나열됩니다.

기본적으로는 모든 BLOB 저장소를 확인합니다.

아니요

TimeLimit <시간(분)>

RBS 유지 관리자가 해당 작업을 수행할 수 있는 시간을 지정합니다. 인수는 양의 정수여야 합니다.

아니요

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

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

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

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

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

    aspnet_regiis -pef connectionStrings . -prov DataProtectionConfigurationProvider
    rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config

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

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

    rename Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config web.config
    aspnet_regiis -pdf connectionStrings

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

    aspnet_regiis -pef connectionStrings . -prov DataProtectionConfigurationProvider
    rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config

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

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

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

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

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

    5. 설정프로그램/스크립트 상자에서 유지 관리자 이진 파일 <RBS 설치 디렉터리>\Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe을 찾은 다음 인수 추가(옵션) 텍스트 상자에서 선택적 인수를 추가합니다. 설치 관리자에서 작성되는 기본값은
      <-ConnectionStringName RBSMaintainerConnection>
      <-Operation GarbageCollection ConsistencyCheck ConsistencyCheckForStores>
      <-GarbageCollectionPhases rdo>
      <-ConsistencyCheckMode r>
      <-TimeLimit 120>입니다.

    6. 확인을 클릭합니다.

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

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

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

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

See Also

Concepts

RBS 개요(SharePoint Server 2010)
RBS 계획(SharePoint Server 2010)
RBS 설치 및 구성(SharePoint Server 2010)
FILESTREAM 공급자 없이 RBS 설치 및 구성(SharePoint Server 2010)
RBS(원격 BLOB 저장소)를 사용하도록 콘텐츠 데이터베이스 설정(SharePoint Server 2010)
RBS로 또는 RBS에서 콘텐츠 마이그레이션(SharePoint Server 2010)
콘텐츠 데이터베이스에서 RBS 해제(SharePoint Server 2010)

Other Resources

SQL Server 및 SharePoint Server 2010 데이터베이스(https://go.microsoft.com/fwlink/?linkid=199866&clcid=0x412)(영문일 수 있음)