SharePoint Server의 모든 데이터베이스 이동

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

SharePoint 중앙 관리 웹 사이트 또는 SQL Server 도구를 사용하여 SharePoint Server과 연결된 모든 데이터베이스를 새 데이터베이스 서버로 이동할 수 있습니다.

시작하기 전에

이 문서의 절차에서는 단일 데이터베이스 서버에서 호스팅되는 다음과 같은 유형의 데이터베이스를 이동하는 방법을 설명합니다.

  • 구성 데이터베이스

  • 중앙 관리 콘텐츠 데이터베이스

  • 콘텐츠 데이터베이스

  • 서비스 응용 프로그램 데이터베이스

중요

동일한 SQL Server 인스턴스 내에서 데이터베이스 파일을 이동하려면 ALTER DATABASE 문의 FILENAME 절을 사용하는 것이 좋습니다. 자세한 내용은 사용자 데이터베이스 이동을 참조하세요.

참고

데이터베이스를 SQL Server의 다른 인스턴스 또는 다른 서버로 이동하려면 데이터베이스 분리 및 연결(SQL Server) 또는 SQL Server 데이터베이스의 백업 및 복원에 있는 절차를 수행하는 것이 좋습니다.

다음은 이 절차를 수행하기 위한 최소한의 권한입니다.

  • Farm Administrators SharePoint 그룹의 구성원이어야 합니다.

  • SharePoint 중앙 관리 웹 사이트가 실행되는 컴퓨터에서 Administrators 그룹의 구성원이어야 합니다.

  • 데이터베이스를 이동하는 데이터베이스 서버에서 다음 그룹에 속해 있어야 합니다.

    • Administrators 그룹

    • db_backupoperator 고정 데이터베이스 역할

  • 데이터베이스를 이동하는 대상 데이터베이스 서버에서 다음에 속해 있어야 합니다.

    • Administrators 그룹

    • db_owner 고정 데이터베이스 역할

일부 환경에서는 데이터베이스 관리자와 함께 이동 절차를 조정해야 합니다. 또한 데이터베이스 관리에 적용되는 모든 정책과 지침을 따라야 합니다.

중요

데이터베이스를 이동하는 경우 프로세스를 완료하기 전까지는 모든 팜 사이트와 자산을 사용할 수 없게 됩니다. 이 작업은 정규 업무 시간 이외의 시간에 완료합니다.

모든 데이터베이스 이동

데이터베이스 서버 간에 모든 데이터베이스를 이동하려면 SharePoint Server 및 SQL Server 둘 다에서 작업을 수행해야 합니다.

이 작업을 시작하기 전에 다음 프로세스의 단계를 검토하십시오.

  1. 새 데이터베이스 서버를 준비합니다.

  2. 열려 있는 모든 SharePoint 관리 셸 창을 닫습니다.

  3. SharePoint Server 및 IIS(인터넷 정보 서비스)와 관련된 모든 서비스를 중지합니다.

  4. 데이터베이스를 현재 SQL Server 인스턴스에서 분리합니다.

  5. 데이터베이스(.mdf, .ndf, .ldf)와 연결된 모든 파일을 SQL Server를 실행하는 새 대상 서버로 복사하거나 이동합니다.

  6. 모든 SQL Server 로그인, 고정 서버 역할, 고정 데이터베이스 역할 및 데이터베이스에 대한 사용 권한이 새 대상 데이터베이스 서버에서 올바르게 구성되어 있는지 확인합니다.

    참고

    데이터베이스를 이동하는 대상 서버에는 현재 SQL Server 인스턴스와 동일한 데이터베이스 정보가 있어야 합니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 SQL Server 인스턴스 간에 로그인 및 암호를 전송하는 방법을 참조하세요. 자세한 내용은 서버 수준 역할데이터베이스 수준 역할을 참조하세요.

  7. SQL Server를 실행하는 새 대상 서버에 데이터베이스를 연결합니다.

  8. SQL Server 연결 별칭을 사용하여 새 데이터베이스를 서버를 가리킨 다음 모든 웹 서버를 업데이트합니다.

    SQL Server 연결 별칭을 사용하지 않으려면 다음 절차 중 하나를 수행하여 SharePoint Server 팜에 대한 데이터베이스 연결을 업데이트합니다.

  • 시나리오 1: 고가용성 또는 재해 복구를 위해 SharePoint Server 및 SQL Server Always On 가용성 그룹을 사용하는 경우 이 절차를 사용하여 데이터베이스 연결을 업데이트합니다.

  • 시나리오 2: 수동 단계를 사용해야 하거나 데이터베이스를 SharePoint Server 단일 서버 팜 역할 설치에서 새 단일 서버 팜 역할 설치로 이동하는 경우 이 절차를 수행합니다.

  1. 3단계에서 중지한 모든 서비스를 다시 시작합니다.

새 데이터베이스 서버를 준비하려면

SharePoint Server에 대해 SQL Server 보안 구성 의 절차를 수행하여 새 데이터베이스 서버를 구성합니다.

새 데이터베이스 서버는 기존 데이터베이스 서버와 동일한 버전의 Windows Server 및 SQL Server 또는 다음 버전 중 하나를 실행해야 합니다.

SharePoint Server 2019 경우:

  • Windows Server 2019

  • Windows Server 2016

  • SQL Server 2016

  • SQL Server 2017

SharePoint Server 2016의 경우:

  • Windows Server 2012 R2

  • Windows Server 2016

  • SQL Server 2014 SP1(서비스 팩 1)

  • SQL Server 2016

SharePoint 2013의 경우:

  • Windows Server 2008 R2

  • Windows Server 2008 R2 SP1(서비스 팩 1)

  • Windows Server 2012

  • SQL Server 2008

  • SQL Server 2012

  • SQL Server 2014

기존 SharePoint Server 및 Windows Server 버전은 DB가 이동되는 새 SQL Server 버전도 지원해야 합니다. 자세한 내용은 SharePoint Server 2016의 하드웨어 및 소프트웨어 요구 사항 및 SharePoint 2013의 하드웨어 및 소프트웨어 요구 사항을 참조하세요.

열려 있는 모든 SharePoint 관리 셸 세션을 닫으려면

  1. 열려 있는 모든 SharePoint 관리 셸 창과 열려 있는 모든 명령 프롬프트 창을 닫습니다.

팜을 중지하려면

  1. 팜의 모든 SharePoint 서버에서 다음 서비스를 중지합니다.
  • SharePoint Administration

  • SharePoint Timer

  • SharePoint Tracing

  • SharePoint User Code Host

  • SharePoint VSS Writer

  • World Wide Web Publishing 서비스

  • SharePoint Server Search 16

  1. 팜의 모든 SharePoint 서버에 명령 프롬프트에서 iisreset /stop을 입력합니다.

데이터베이스를 분리하려면

  1. 원래 데이터베이스 서버의 SQL Server Management Studio 연결된 인스턴스에서 이동할 데이터베이스를 분리합니다. 실행 중인 데이터베이스가 많은 경우 Transact-SQL 스크립트를 실행하여 데이터베이스를 분리할 수도 있습니다.

    다음 조건에 하나라도 해당되는 경우에는 데이터베이스를 분리할 수 없습니다.

데이터베이스 파일을 새 서버로 이동하려면

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

    데이터베이스를 이동하는 데이터베이스 서버에서 다음 그룹에 속해 있어야 합니다.

  • Administrators 그룹

  • db_backupoperator 고정 데이터베이스 역할

    데이터베이스를 이동하는 대상 데이터베이스 서버에서 다음에 속해 있어야 합니다.

  • Administrators 그룹

  • db_owner 고정 데이터베이스 역할

  1. Windows 탐색기를 사용하여 이동할 각 데이터베이스와 연결된 .mdf, .ldf 및 .ndf 파일을 찾습니다.

  2. SQL Server를 실행하는 새 컴퓨터의 대상 디렉토리로 파일을 복사하거나 이동합니다.

새 서버에서 사용 권한을 설정하려면

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

  • db_owner 고정 데이터베이스 역할

  1. 대상 데이터베이스 서버에서 Management Studio를 시작하고 로그온 자격 증명 및 권한을 원래 인스턴스에서 대상 인스턴스로 전송합니다. 스크립트를 실행하여 사용 권한을 전송하는 것이 좋습니다. 예제 스크립트는 SQL Server 인스턴스 간에 로그인 및 암호를 전송하는 방법에서 사용할 수 있습니다.

    인스턴스 간에 SQL Server 메타데이터를 전송하는 방법에 대한 자세한 내용은 다른 서버 인스턴스에서 데이터베이스를 사용할 수 있도록 할 때 메타데이터 관리를 참조하세요.

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

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

  • db_owner 고정 데이터베이스 역할

  1. 대상 데이터베이스 서버에서 데이터베이스를 새 인스턴스에 연결합니다. 자세한 내용은 데이터베이스 연결sp_attach_db(Transact-SQL)을 참조하세요.

다음 절차에서는 새 SQL Server 인스턴스에 연결하거나 데이터베이스 연결을 업데이트하는 메서드를 제공합니다. SharePoint Server 팜 환경에 가장 적합한 절차를 사용합니다.

중요

데이터베이스를 이동하기 전에 SharePoint Server 및 SQL Server Always On 가용성 그룹을 사용하는 경우 AG Listner를 가리킵니다. 단일 서버 팜에서 AlwayOn 가용성 그룹으로 이동하는 경우 cliconfg.exe 사용해야 합니다.

SQL Server 연결 별칭을 설정하여 웹 응용 프로그램이 새 데이터베이스 서버를 가리키도록 하려면

  1. 이 절차는 데이터베이스를 호스트하는 SQL Server의 인스턴스에 연결되는 SharePoint Server 팜의 모든 서버에서 수행해야 합니다.

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

  • Administrators 그룹

  • db_owner 고정 데이터베이스 역할

  1. SQL Server 클라이언트 네트워크 유틸리티(cliconfg.exe)를 시작합니다. 이 유틸리티는 일반적으로 C:\Windows\SysWOW64 및 C:\Windows\System32 폴더에 있습니다.

  2. 일반 탭에서 TCP/IP가 사용되도록 설정되어 있는지 확인합니다.

  3. 별칭 탭에서 추가를 클릭합니다. 네트워크 라이브러리 구성 추가 창이 나타납니다.

  4. 서버 별칭 상자에 SQL Server의 현재 인스턴스 이름을 입력합니다.

  5. 네트워크 라이브러리 영역에서 TCP/IP를 클릭합니다.

  6. 연결 매개 변수 영역의 서버 이름 상자에 별칭과 연결할 새 서버 이름 및 인스턴스를 입력하고 확인을 클릭합니다. SharePoint Server 데이터베이스를 호스팅하는 새 서버의 이름입니다.

  7. SQL Server의 새 인스턴스에 연결하는 팜의 모든 서버에 대해 3-8단계를 반복합니다.

  8. 선택 사항. 환경이 백업 및 복구를 위해 볼륨 섀도 복사본 서비스 프레임워크를 사용하는 System Center 2012 - DPM(Data Protection Manager) 또는 타사 애플리케이션을 사용하는 경우 SQL Server 설정을 실행하여 각 웹 서버 또는 애플리케이션 서버에 SQL Server 연결 구성 요소를 설치해야 합니다. 자세한 내용은 설치 마법사(설치) 및 Windows Server 설치 및 업그레이드에서 SQL Server 2014설치를 참조하세요.

이러한 Microsoft PowerShell cmdlet을 사용하여 SharePoint Server이 있는 SQL Server의 가용성 그룹을 배포, 관리 및 제거할 수 있습니다.

  • Add-DatabaseToAvailabilityGroup

  • Remove-DatabaseFromAvailabilityGroup

  • Get-AvailabilityGroupStatus

고가용성 또는 재해 복구를 위해 SharePoint Server 및 SQL Server Always On 가용성 그룹을 사용하는 경우 다음 절차를 사용하여 데이터베이스 연결을 업데이트합니다.

시나리오 1: PowerShell을 사용하여 데이터베이스 연결을 업데이트하려면

  1. 다음 멤버 자격이 있는지 확인합니다.
  • SQL Server 인스턴스에 대한 securityadmin 고정 서버 역할

  • 업데이트하려는 모든 데이터베이스에 대한 db_owner 고정 데이터베이스 역할

  • PowerShell cmdlet을 실행 중인 서버의 Administrators 그룹

    관리자는 Add-SPShellAdmin cmdlet을 사용하여 SharePoint Server cmdlet 사용 권한을 부여할 수 있습니다.

    참고

    권한이 없는 경우 설치 관리자 또는 SQL Server 관리자에게 문의하여 권한을 요청하십시오. PowerShell 권한에 대한 자세한 내용은 Add-SPShellAdmin을 참조하십시오.

  1. SharePoint 관리 셸을 시작합니다.

  2. PowerShell 명령 프롬프트에서 다음 명령을 입력합니다.

Add-DatabaseToAvailabilityGroup -AGName "<AGGroupName>" -DatabaseName "<DatabaseName>" [-FileShare "<\\server\share>"]

여기서,

  • <AGGroupName> 은 가용성 그룹의 이름입니다.

  • <DatabaseName>은 사용 가능 그룹에 추가하는 데이터베이스의 이름입니다.

  • 선택적 -FileShare 매개 변수를 사용하는 <경우 \server\share> 는 서버 이름과 사용하는 공유입니다.

  1. 구성 및 중앙 관리 콘텐츠 데이터베이스를 비롯하여 이동하는 모든 데이터베이스에 대해 이러한 단계를 반복합니다.

다음 시나리오에 대해 이어지는 절차를 사용하세요.

시나리오 2: Microsoft PowerShell을 사용하여 데이터베이스 연결을 업데이트하려면

  1. SharePoint 관리 셸을 시작합니다.

  2. PowerShell 명령 프롬프트에서 다음 명령을 입력합니다.

$db = Get-SPDatabase -Identity <guid>

여기서 <GUID> 는 이동하는 데이터베이스의 ID입니다.

참고

매개 변수 없이 Get-SPDatabase 를 사용하여 GUID가 있는 모든 데이터베이스 목록을 확인합니다.

$db.ChangeDatabaseInstance("<DBServerName>")

여기서 <DBServerName>은 새 SQL Server 이름 또는 별칭이거나 Always On 가용성 그룹 수신기 DNS 이름입니다.

$db.Update()
  1. SQL Server 데이터베이스 미러링을 사용하는 경우 SharePoint 데이터베이스의 FailoverServiceInstance 속성을 채워야 합니다.
$db.failoverserviceinstance("<DBServerName>")

여기서 <DBServerName>은 미러된 SQL Server 이름 또는 별칭입니다.

$db.update()
  1. 구성 및 중앙 관리 콘텐츠 데이터베이스를 비롯하여 이동하는 모든 데이터베이스에 대해 이러한 단계를 반복합니다.

팜에서 서비스를 다시 시작하려면

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

  2. 팜의 모든 SharePoint 서버에 명령 프롬프트에서 iisreset /start를 입력합니다.

  3. Microsoft 관리 콘솔 서비스 스냅인에서 SharePoint Server 및 IIS와 관련된 모든 서비스를 시작합니다. 이러한 서비스에는 다음이 포함됩니다.

  • SharePoint Administration

  • SharePoint Timer

  • SharePoint Tracing

  • SharePoint User Code Host

  • SharePoint VSS Writer

  • World Wide Web Publishing 서비스

  • SharePoint Server Search

참고 항목

개념

SharePoint Server의 데이터베이스 형식 및 설명

기타 리소스

빠른 참조 가이드: SharePoint Server 2016 데이터베이스

SharePoint 2013을 지원하는 데이터베이스

Add a database server to an existing farm in SharePoint 2013