SharePoint Content DB Migration Guide
사용중인 쉐어포인트 컨텐츠 데이터 베이스를 다른 팜으로 옮기는 작업에 대한 절차 및 가이드 입니다.
운영서버에서 개발서버로 Content Database 를 옮기는 작업에 대해 적용 가능합니다.
공식적인 기술문서는 아래의 링크들을 참조하실 수 있습니다
- Move content databases in SharePoint 2013 (https://technet.microsoft.com/en-us/library/cc262792.aspx )
- Attach or detach content databases in SharePoint 2013 (https://technet.microsoft.com/en-us/library/ff628582.aspx )
- Test-SPContentDatabase (https://technet.microsoft.com/en-us/library/ff607941.aspx )
- Move-SPUser (https://technet.microsoft.com/en-us/library/ff607729.aspx )
- SPFarm.MigrateGroup (https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spfarm.migrategroup.aspx )
1. 운영환경의 Custom 솔루션 / 빌드버전 / 권한구성내용 / 관리경로 확인
운영서버의 SharePoint 빌드버전과 개발서버의 SharePoint 빌드버전의 확인이 필요합니다.
빌드 번호가 같거나 높을 때에만 데이터베이스를 마운트 할 수 있습니다
개발서버가 운영서버보다 빌드버전이 높거나 같아야 합니다.
운영서버에 설치 배포된 Custom 솔루션에 대한 조사가 필요합니다.
개발서버에도 동일하게 설치 배포되어야만 데이터베이스를 마운트 할 수 있습니다.
운영서버에서 권한을 어떻게 설정하여 구성하였는지에 대한 조사가 필요합니다
구체적으로는 AD 그룹을 권한설정에 사용했는지에 대한 조사가 필요합니다
운영서버에서 두번째 이후의 사이트 컬렉션에서 사용하는 관리경로에 대한 조사가 필요합니다
2. 운영 SQL 에서 데이터 베이스 백업
- 운영계의 SQL 서버에서 이전할 대상이 되는 데이터베이스를 백업 해주십시오
3. 백업된 데이터 베이스 개발 SQL 에서 복원
- -백업된 데이터베이스의 bak 파일을 개발계 SQL로 옮겨 새로운 데이터베이스로 복원해 주십시오
4. 신규 웹 응용 프로그램 생성
개발계 서버에서 신규로 웹응용 프로그램을 생성해주십시오.
다만 웹 응용 프로그램을 만들고 최상위 사이트 컬렉션을 만드는 작업은 진행하지 않습니다.
5. 1번 항목의 내용을 개발계에 적용
- 1번 항목에서 운영서버 환경에서 조사한 내용을 개발계에 적용합니다
- 운영서버에서 특정한 관리경로를 사용하고 있다면, 4번에서 새로 만든 웹응용 프로그램에 동일한 관리경로를 만들어 주십시오.
- 운영서버에 설치 배포된 Custom Solution이 개발계에도 설치 배포되어야 합니다.
6. 데이터 베이스 검증
개발서버에서 SharePoint Management Shell을 관리자권한으로 실행해 주십시오
아래의 명령어를 통해 마운트할 데이터 베이스를 테스트 합니다
Test-SPContentDatabase -name "" -webapplication https://sitename
이 명령어를 수행하였을 때, 아무 메시지도 출력되지 않는 것이 성공된 것입니다.
만약 어떤 메세지들이 출력된다면, 트러블 슈팅이 필요합니다.
7. 데이터 베이스 마운트
개발서버에서 SharePoint Management Shell을 관리자권한으로 실행해 주십시오
아래의 명령어를 통해 데이터 베이스를 마운트 합니다.
Mount-SPContentDatabase "" -DatabaseServer "" -WebApplication https://SiteName
이 작업이 성공적으로 완료된다면, 중앙관리 사이트에서 사이트 컬렉션을 볼 수 있고, 실제로 브라우저를 통해 사이트에 접속도 가능합니다.
8. 사용자 마이그레이션
이 작업은 필요에 따라 진행하지 않아도 됩니다
이전서버의 사용자를 새서버의 사용자로 마이그레이션 할 수 있습니다.
개발서버에서 SharePoint Management Shell을 관리자권한으로 실행해 주십시오
아래의 명령어를 통해 사용자를 마이그레이션할 수 있습니다.
Move-SPUser -Identity "DomainA\JaneDoe" -NewAlias "DomainB\JaneDoe"
사용자 별로 개별적으로 수행해 주어야 하며, 이작업을 통해 사용자의 사이트와 문서에 대한 권한을 마이그레이션 할 수 있습니다
Ad그룹으로 권한부여한 내용을 그대로 살리고자 한다면 개발계 AD에 그룹을 만들고 아래명령어를 통해 그룹마이그레이션을 할 수 있습니다
stsadm -o migrategroup –oldlogin old\abc –newlogin new\abc
참조 : https://blogs.msdn.microsoft.com/sowmyancs/2012/01/06/migrate-users-groups-powershell-script/
9. 테스트 검증
- 사이트에 접속하여 테스트를 수행하여 마이그레이션 결과를 확인합니다