콘텐츠 데이터베이스 이동(SharePoint Server 2010)

 

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

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

이 문서에서는 Microsoft SQL Server가 실행되는 서버 간, SQL Server 인스턴스 간 또는 Microsoft SharePoint Server 2010 웹 응용 프로그램 간에 콘텐츠 데이터베이스를 옮기는 방법에 대해 설명합니다. 콘텐츠 데이터베이스를 옮겨 데이터베이스 또는 웹 응용 프로그램의 부하를 분산시킬 수 있습니다.

중요

이 문서에서는 콘텐츠 데이터베이스를 옮기는 방법에 대해서만 설명합니다. SharePoint Server 2010과 연결된 다른 유형의 데이터베이스를 옮기는 방법에 대한 자세한 내용은 서비스 응용 프로그램 데이터베이스 이름 바꾸기 또는 이동(SharePoint Server 2010)모든 데이터베이스 이동(SharePoint Server 2010)을 참조하십시오.

콘텐츠 데이터베이스 이동 개요

콘텐츠 데이터베이스를 옮기는 경우 SharePoint Server 2010 도구와 SQL Server 도구를 모두 사용해야 합니다. 또한 SharePoint Server 중앙 관리 웹 사이트나 Windows PowerShell 2.0 중 하나를 사용할 수 있습니다. 다음 목록에는 콘텐츠 데이터베이스를 옮기는 방법이 요약되어 있습니다.

  1. 콘텐츠 데이터베이스의 이름과 해당 데이터베이스에 연결된 웹 응용 프로그램을 기록합니다. 자세한 내용은 각 웹 응용 프로그램에 연결된 콘텐츠 데이터베이스를 기록하려면을 참조하십시오.

  2. 타이머 작업 및 검색 크롤링을 포함하여 데이터베이스에 대해 실행될 수 있는 모든 서비스 응용 프로그램과 서비스를 일시 중지합니다. 자세한 내용은 Windows PowerShell을 사용하여 타이머 작업을 일시 중지하려면(선택 사항 1) 또는 중앙 관리를 사용하여 타이머 작업을 일시 중지하려면(선택 사항 2)을 참조하십시오.

  3. SharePoint Server의 웹 응용 프로그램에서 콘텐츠 데이터베이스를 제거합니다. 이 작업은 중앙 관리 또는 Windows PowerShell 2.0을 사용하여 수행할 수 있습니다. 일반적으로 두 개 이상의 데이터베이스로만 작업을 수행하는 경우에는 Windows PowerShell 2.0 스크립트를 작성하는 것이 더 빠를 수 있습니다. 자세한 내용은 중앙 관리를 사용하여 웹 응용 프로그램에서 콘텐츠 데이터베이스를 분리하려면(선택 사항 1) 또는 Windows PowerShell을 사용하여 웹 응용 프로그램에서 콘텐츠 데이터베이스를 분리하려면(선택 사항 2)을 참조하십시오.

  4. SQL Server의 현재 인스턴스에서 데이터베이스를 분리합니다. 자세한 내용은 SQL Server에서 콘텐츠 데이터베이스를 분리하려면을 참조하십시오.

  5. Windows 탐색기를 사용하여 데이터베이스와 연관된 .mdf, .ndf 및 .ldf 파일을 원본 위치에서 대상 위치로 복사하거나 옮깁니다. 자세한 내용은 콘텐츠 데이터베이스를 새 위치로 이동하려면을 참조하십시오.

    참고

    또한 데이터베이스를 백업했다가 복원하여 이동할 수도 있지만 이 문서에서는 백업 및 복구에 대해 설명하지 않습니다. 자세한 내용은 백업 및 복구(SharePoint Server 2010)를 참조하십시오.

  6. SQL Server에서 데이터베이스를 새 인스턴스에 연결합니다. 자세한 내용은 SQL Server의 새 인스턴스에 콘텐츠 데이터베이스를 연결하려면.

  7. SharePoint Server에서 대상 웹 응용 프로그램에 콘텐츠 데이터베이스를 추가합니다. 이때 정확히 동일한 이름을 사용하여 콘텐츠 데이터베이스를 다시 연결해야 합니다. 그렇지 않으면 SharePoint Server에서 새 콘텐츠 데이터베이스를 만듭니다. 이 작업을 수행하기 위해 중앙 관리 또는 Windows PowerShell 2.0을 사용할 수 있습니다. 자세한 내용은 중앙 관리를 사용하여 콘텐츠 데이터베이스를 웹 응용 프로그램에 연결하려면(선택 사항 1) 또는 Windows PowerShell을 사용하여 콘텐츠 데이터베이스를 웹 응용 프로그램에 연결하려면(선택 사항 2)을 참조하십시오.

  8. 타이머 작업 및 검색 크롤링을 포함하여 데이터베이스에 대해 실행될 수 있는 모든 서비스 응용 프로그램과 서비스를 다시 시작합니다. 자세한 내용은 Windows PowerShell을 사용하여 타이머 작업을 다시 시작하려면(선택 사항 1) 또는 중앙 관리를 사용하여 타이머 작업을 다시 시작하려면(선택 사항 2)을 참조하십시오.

콘텐츠 데이터베이스 이동

참고

다음 절차를 완료하려면 로컬 컴퓨터의 Administrators 그룹에 속해 있어야 합니다. SharePoint Server 2010을 최소 권한 환경에서 실행하고 절차를 중앙 관리에서 수행하는 경우 SQL Server에서 다음과 같은 역할이 있어야 합니다.

  • 콘텐츠 데이터베이스를 분리하는 데 필요한 원본 서버의 구성 데이터베이스 및 콘텐츠 데이터베이스에 대한 dbowner 고정 데이터베이스 역할

  • 데이터베이스를 분리하고 SQL Server 로그인을 구성하는 데 필요한 대상 서버에 대한 dbcreatorsecurityadmin 고정 서버 역할

참고

콘텐츠 데이터베이스를 다른 팜으로 옮기려는 경우 복원 프로세스 중에 서버 팜 계정을 데이터베이스 서버의 Administrators 그룹 구성원으로 설정해야 합니다. 이렇게 하면 해당 계정에서 데이터베이스의 보안 설정을 복제할 수 있습니다. 이 액세스 수준을 제거하려면 먼저 콘텐츠 데이터베이스를 제거해야 합니다. 자세한 내용은 계정 권한 및 보안 설정(SharePoint Server 2010)을 참조하십시오.
대상 팜에서는 원본 팜에서 실행하는 SharePoint Server 2010 버전 이상의 버전을 실행해야 합니다.

각 웹 응용 프로그램에 연결된 콘텐츠 데이터베이스를 기록하려면

  1. 다음과 같은 최소 요구 사항을 충족하는지 확인합니다. Add-SPShellAdmin을 참조하십시오.

  2. 시작 메뉴에서 모든 프로그램을 클릭합니다.

  3. Microsoft SharePoint 2010 Products를 클릭합니다.

  4. SharePoint 2010 관리 셸을 클릭합니다.

  5. Windows PowerShell 명령 프롬프트에 다음 명령을 입력합니다.

    Get-SPContentDatabase -WebApplication <http://SiteName>
    

    여기서 <http://사이트 이름>은 웹 응용 프로그램의 URL입니다.

  6. 각 웹 응용 프로그램에 대해 이 단계를 반복합니다.

자세한 내용은 Get-SPContentDatabase를 참조하십시오.

참고

명령줄 관리 작업을 수행하는 경우 Windows PowerShell을 사용하는 것이 좋습니다. Stsadm 명령줄 도구는 더 이상 사용되지 않지만 이전 제품 버전과의 호환성을 지원하기 위해 포함됩니다.

Windows PowerShell을 사용하여 타이머 작업을 일시 중지하려면(선택 사항 1)

  1. 다음과 같은 최소 요구 사항을 충족하는지 확인합니다. Add-SPShellAdmin을 참조하십시오.

  2. 시작 메뉴에서 모든 프로그램을 클릭합니다.

  3. Microsoft SharePoint 2010 Products를 클릭합니다.

  4. SharePoint 2010 관리 셸을 클릭합니다.

  5. Windows PowerShell 명령 프롬프트에 다음 명령을 입력합니다.

    Get-SPTimerJob -webapplication <http://WebApplicationURL> | select name | Out-File <c:\timerjobfile.txt> -Append -Encoding ascii
    
    ForEach($tmrjob in (Get-Content <c:\timerjobfile.txt>)) { Get-SPTimerJob -Identity $tmrjob | Disable-SPTimerjob }
    

    여기서 각 부분이 나타내는 의미는 다음과 같습니다.

    • <http://웹 응용 프로그램 URL>은 옮기는 콘텐츠 데이터베이스와 연결된 웹 응용 프로그램입니다.

    • <c:\타이머 작업 파일.txt>는 웹 응용 프로그램과 연결된 모든 타이머 작업이 나열된 만들고 있는 파일의 위치입니다.

자세한 내용은 Get-SPTimerJob, Out-File, ForEach-Object, Get-ContentDisable-SPTimerJob을 참조하십시오.

참고

명령줄 관리 작업을 수행하는 경우 Windows PowerShell을 사용하는 것이 좋습니다. Stsadm 명령줄 도구는 더 이상 사용되지 않지만 이전 제품 버전과의 호환성을 지원하기 위해 포함됩니다.

중앙 관리를 사용하여 타이머 작업을 일시 중지하려면(선택 사항 2)

  1. 이 절차를 수행하는 사용자 계정이 Farm Administrators SharePoint 그룹의 구성원인지 확인합니다.

  2. 중앙 관리의 모니터링 섹션에서 작업 상태 확인을 클릭합니다.

  3. 옮기는 콘텐츠 데이터베이스에 대해 실행되는 예약된 각 작업을 클릭하여 타이머 작업 편집 페이지를 열고 사용 안 함을 클릭한 다음 확인을 클릭합니다.

  4. Search Service 응용 프로그램을 실행하고 콘텐츠 데이터베이스를 크롤링하는 중인 경우 크롤링 시작, 일시 중지, 다시 시작 또는 중지(SharePoint Server 2010) 문서에 나와 있는 크롤링을 일시 중지하기 위한 단계를 따릅니다.

중앙 관리를 사용하여 웹 응용 프로그램에서 콘텐츠 데이터베이스를 분리하려면(선택 사항 1)

  1. 이 절차를 수행하는 사용자 계정이 Farm Administrators SharePoint 그룹의 구성원인지 확인합니다.

  2. 중앙 관리의 응용 프로그램 관리 섹션에서 콘텐츠 데이터베이스 관리를 클릭합니다.

  3. 콘텐츠 데이터베이스 관리 페이지에서 이동할 콘텐츠 데이터베이스를 클릭합니다.

    콘텐츠 데이터베이스 설정 관리 페이지가 열립니다.

    참고

    콘텐츠 데이터베이스가 목록에 나타나지 않으면 다른 웹 응용 프로그램과 연결된 것일 수 있습니다. 다른 웹 응용 프로그램을 선택하려면 웹 응용 프로그램 메뉴에서 웹 응용 프로그램 변경을 클릭합니다.

  4. 콘텐츠 데이터베이스 설정 관리 페이지의 콘텐츠 데이터베이스 제거 섹션에서 콘텐츠 데이터베이스 제거 확인란을 선택한 다음 확인을 클릭합니다.

    참고

    콘텐츠 데이터베이스를 제거해도 데이터베이스는 삭제되지 않으며 웹 응용 프로그램과 데이터베이스 간의 연결만 제거됩니다.

  5. 이동할 각 콘텐츠 데이터베이스에 대해 3 - 4단계를 반복합니다.

Windows PowerShell을 사용하여 웹 응용 프로그램에서 콘텐츠 데이터베이스를 분리하려면(선택 사항 2)

  1. 다음과 같은 최소 요구 사항을 충족하는지 확인합니다. Add-SPShellAdmin을 참조하십시오.

  2. 시작 메뉴에서 모든 프로그램을 클릭합니다.

  3. Microsoft SharePoint 2010 Products를 클릭합니다.

  4. SharePoint 2010 관리 셸을 클릭합니다.

  5. Windows PowerShell 명령 프롬프트에 다음 명령을 입력합니다.

    Dismount-SPContentDatabase "<ContentDB>" 
    

    <콘텐츠 데이터베이스>는 콘텐츠 데이터베이스의 이름입니다.

    참고

    이름이 같은 콘텐츠 데이터베이스가 여러 개인 경우 이 명령에 콘텐츠 데이터베이스 이름 대신 콘텐츠 데이터베이스 GUID를 사용해야 합니다. 콘텐츠 데이터베이스의 GUID를 검색하려면 Get-SPContentDatabase cmdlet을 인수 없이 실행합니다.

자세한 내용은 Dismount-SPContentDatabaseGet-SPContentDatabase를 참조하십시오.

참고

명령줄 관리 작업을 수행하는 경우 Windows PowerShell을 사용하는 것이 좋습니다. Stsadm 명령줄 도구는 더 이상 사용되지 않지만 이전 제품 버전과의 호환성을 지원하기 위해 포함됩니다.

SQL Server에서 콘텐츠 데이터베이스를 분리하려면

  1. 이 절차를 수행하는 사용자 계정이 각 데이터베이스가 저장되는 데이터베이스 서버에서 db_owner 고정 데이터베이스 역할의 구성원인지 확인합니다.

  2. SQL Server Management Studio에서 원본 SQL Server 인스턴스를 연 다음 데이터베이스 노드를 확장합니다.

  3. 콘텐츠 데이터베이스를 마우스 오른쪽 단추로 클릭하고 작업을 가리킨 다음 분리를 클릭합니다. 이동할 각 콘텐츠 데이터베이스에 대해 이 단계를 반복합니다.

    참고

    콘텐츠 데이터베이스를 이동할 때만 이 절차를 사용하십시오. 다른 데이터베이스는 분리하지 마십시오.

새 위치로 콘텐츠 데이터베이스를 이동하려면

  1. 이 절차를 수행하는 사용자 계정에 원본 및 대상 폴더 둘 다에 대한 쓰기 권한이 있는지 확인합니다.

  2. Windows 탐색기를 사용하여 콘텐츠 데이터베이스의 .mdf, .ldf 및 .ndf 파일을 찾습니다.

  3. 이동할 데이터베이스의 .mdf, .ldf 및 .ndf 파일을 선택한 다음 대상 디렉터리로 복사하거나 이동합니다.

콘텐츠 데이터베이스를 새 SQL Server 인스턴스에 연결하려면

  1. 이 절차를 수행하는 사용자 계정이 각 데이터베이스가 저장되는 데이터베이스 서버에서 dbcreator 고정 서버 역할의 구성원인지 확인합니다.

  2. Management Studio에서 대상 SQL Server 인스턴스를 엽니다.

  3. 데이터베이스 노드를 마우스 오른쪽 단추로 클릭하고 작업을 가리킨 다음 연결을 클릭합니다.

  4. 데이터베이스 연결 대화 상자에서 .mdf, .ldf 및 .ndf 파일을 전송한 위치를 찾은 다음 연결할 데이터베이스의 .mdf 파일을 선택하고 확인을 클릭합니다.

  5. 이동할 각 콘텐츠 데이터베이스에 대해 이 단계를 반복합니다.

중앙 관리를 사용하여 콘텐츠 데이터베이스를 웹 응용 프로그램에 연결하려면(선택 사항 1)

  1. 이 절차를 수행하는 사용자 계정이 Farm Administrators 그룹의 구성원인지 확인합니다.

  2. 중앙 관리의 응용 프로그램 관리 섹션에서 콘텐츠 데이터베이스 관리를 클릭합니다.

  3. 콘텐츠 데이터베이스 관리 페이지에서 콘텐츠 데이터베이스 추가를 클릭합니다.

  4. 콘텐츠 데이터베이스 추가 페이지에서 웹 응용 프로그램 메뉴에 올바른 웹 응용 프로그램이 표시되는지 확인합니다.

  5. 서버 상자에서 데이터베이스를 호스팅하는 데이터베이스 서버를 지정합니다.

  6. 데이터베이스 이름 상자에 전송한 콘텐츠 데이터베이스의 이름을 정확하게 입력합니다.

    참고

    이름이 올바른지 확인합니다. 이름이 올바르지 않으면 새 데이터베이스가 만들어집니다.

  7. 데이터베이스에 대한 인증 방법을 지정하고 확인을 클릭합니다.

  8. 추가 중인 각 데이터베이스에 대해 이러한 단계를 반복합니다. 웹 응용 프로그램 메뉴에서 각 데이터베이스에 대한 올바른 웹 응용 프로그램을 선택해야 합니다.

Windows PowerShell을 사용하여 콘텐츠 데이터베이스를 웹 응용 프로그램에 연결하려면(선택 사항 2)

  1. 다음과 같은 최소 요구 사항을 충족하는지 확인합니다. Add-SPShellAdmin을 참조하십시오.

  2. 시작 메뉴에서 모든 프로그램을 클릭합니다.

  3. Microsoft SharePoint 2010 Products를 클릭합니다.

  4. SharePoint 2010 관리 셸을 클릭합니다.

  5. Windows PowerShell 명령 프롬프트에 다음 명령을 입력합니다.

    Mount-SPContentDatabase "<ContentDB>" -DatabaseServer "<DBServer>" -WebApplication <http://SiteName>
    

    여기서 각 부분이 나타내는 의미는 다음과 같습니다.

    • <콘텐츠 데이터베이스>는 연결할 콘텐츠 데이터베이스입니다.

    • <데이터베이스 서버>는 데이터베이스 서버의 이름입니다.

    • <http://사이트 이름>은 콘텐츠 데이터베이스를 연결할 웹 응용 프로그램의 URL입니다.

자세한 내용은 Mount-SPContentDatabase를 참조하십시오.

참고

명령줄 관리 작업을 수행하는 경우 Windows PowerShell을 사용하는 것이 좋습니다. Stsadm 명령줄 도구는 더 이상 사용되지 않지만 이전 제품 버전과의 호환성을 지원하기 위해 포함됩니다.

Windows PowerShell을 사용하여 타이머 작업을 다시 시작하려면(선택 사항 1)

  1. 다음과 같은 최소 요구 사항을 충족하는지 확인합니다. Add-SPShellAdmin을 참조하십시오.

  2. 시작 메뉴에서 모든 프로그램을 클릭합니다.

  3. Microsoft SharePoint 2010 Products를 클릭합니다.

  4. SharePoint 2010 관리 셸을 클릭합니다.

  5. Windows PowerShell 명령 프롬프트에 다음 명령을 입력합니다.

    ForEach($tmrjob in (Get-Content <c:\timerjobfile.txt>)) {Get-SPTimerJob -Identity $tmrjob | Enable-SPTimerjob}
    

    여기서 각 부분이 나타내는 의미는 다음과 같습니다.

    • <c:\타이머 작업 파일.txt>는 웹 응용 프로그램과 연결된 모든 타이머 작업이 나열된 위에서 만든 파일의 위치입니다.

자세한 내용은 Get-SPTimerJob, ForEach-Object, Get-ContentEnable-SPTimerJob을 참조하십시오.

참고

명령줄 관리 작업을 수행하는 경우 Windows PowerShell을 사용하는 것이 좋습니다. Stsadm 명령줄 도구는 더 이상 사용되지 않지만 이전 제품 버전과의 호환성을 지원하기 위해 포함됩니다.

중앙 관리를 사용하여 타이머 작업을 다시 시작하려면(선택 사항 2)

  1. 이 절차를 수행하는 사용자 계정이 Farm Administrators 그룹의 구성원인지 확인합니다.

  2. 중앙 관리의 모니터링 섹션에서 작업 상태 확인을 클릭합니다.

  3. 앞에서 사용하지 않도록 설정한 각 예약된 작업을 클릭하여 타이머 작업 편집 페이지를 열고 사용을 클릭한 다음 확인을 클릭합니다.

  4. Search Service 응용 프로그램을 실행하고 콘텐츠 데이터베이스를 크롤링하는 중인 경우 크롤링 시작, 일시 중지, 다시 시작 또는 중지(SharePoint Server 2010) 문서에 나와 있는 크롤링을 재시작하기 위한 단계를 따릅니다. 콘텐츠 데이터베이스에 대해 전체 크롤링을 실행해야 합니다.