将SharePoint网站集拆分为多个网站集 [英] Split SharePoint Site Collection into multiple Site Collections

查看:146
本文介绍了将SharePoint网站集拆分为多个网站集的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问题说明:

Problem Statement:

1.我们有一个网站集: WebURL/网站/项目.当前,其内容数据库的大小 ProjectDB 的大小接近 1 TB (在UAT和PROD环境中均为 ).此SP SiteCollection与Dynamics CRM集成在一起,因此,只要在CRM中创建特定类型的记录,就会有一个对应的记录. 在SP站点中创建文件夹.它包含从2010年开始的数据,将来也将继续使用.因此,我们正在创建多个SiteCollections作为 WebURL/sites/Project2010 WebURL/sites/Project2011 WebURL/sites/Project2012 等,直到 2017 ,用于从主SiteCollection迁移数据年(在CRM中创建记录的年份)明智的数据每个具有自己的内容数据库的SiteCollection.

1.       We have a Site Collection: WebURL/sites/Project. Currently the size of its Content DB ProjectDB is approaching 1 TB of size (both in UAT and PROD environments). This SP SiteCollection has an integration with Dynamics CRM, in a way that whenever a record of a particular type is created in CRM, a corresponding Folder is created in the SP site. It contains data from the year 2010 onwards and will continue to do so for future as well. Hence, we are in the process of creating multiple SiteCollections as WebURL/sites/Project2010, WebURL/sites/Project2011, WebURL/sites/Project2012, etc. till 2017 for migrating year (year of creation of the record in CRM) wise data from the main SiteCollection to each individual SiteCollection having its individual Content DB.

2. 主要SiteCollection包含3个文档库为 DocLib1 DocLib2 DocLib3 .虽然主要的SiteCollection将继续具有这3个库,但按年份计算,SiteCollections仅需要具有2个库 DocLib2 DocLib3

2.       The main SiteCollection contains 3 Document Liraries as DocLib1, DocLib2 and DocLib3. While the main SiteCollection will continue to have these 3 Liraries, the year wise SiteCollections need to have only 2 Liraries as DocLib2 and DocLib3

当前方法:

Current Approach:

Step1 :    创建主内容数据库 ProjectDB

Step1:   Create a backup of the main Content DB ProjectDB

Step2 :    将备份还原为 ProjectDB_BKP

Step2:   Restore the backup as ProjectDB_BKP

Step3 :    创建一个新的SiteCollection作为 WebURL/sites/ProjectBKP 并将其附加到内容数据库 ProjectDB_BKP

Step3:   Create a new SiteCollection as WebURL/sites/ProjectBKP and attach it to the Content DB ProjectDB_BKP

以上3< sup/rd</sup>步骤导致出现错误,指出" The 附加操作无法继续,因为此服务器场中的另一个对象已经包含相同的ID ProjectDB 和 ProjectDB_BKP DB在备份-还原过程中具有相同的GUID.因此,将上述步骤修改为:

The above 3<sup>rd</sup> Step resulted in an error stating "The attach operation cannot continue because another object in this farm already contains the same ID". This I suppose is because the ProjectDB and ProjectDB_BKP DBs have the same GUID as part of the Backup-Restoration process. Hence, modified the above steps as:

Step1 :    在SQL中以 ProjectDB_BKP创建空白DB.

Step1:   Create a Blank DB in SQL as ProjectDB_BKP.

Step2 :    使用以下PowerShell脚本将主SiteCollection复制为新的SiteCollection,并为其指定目标数据库名称:

Step2:   Copy the main SiteCollection as a new SiteCollection giving it the Destination DB name using the following PowerShell script:

Copy-SPSite WebURL/sites/Project -DestinationDatabase ProjectDB_BKP -TargetUrl WebURL/sites/ProjectBKP

Step3 :    从新的SiteCollection WebURL/sites/ProjectBKP

Step3:   Delete the Library DocLib1 from the new SiteCollection WebURL/sites/ProjectBKP

Step4 :    在SQL中以 ProjectDB_BKP2010

Step4:   Create a Blank DB in SQL as ProjectDB_BKP2010

Step5 :    将主SiteCollection复制为新的SiteCollection WebURL/sites/ProjectBKP ,并为其指定目标数据库 ProjectDB_BKP2010 名称,使用上面提到的复制PowerShell"脚本命令

Step5:   Copy the main SiteCollection as a new SiteCollection WebURL/sites/ProjectBKP giving it the Destination DB ProjectDB_BKP2010 name using the Copy PowerShell script command mentioned above

Step6 :    使用我们设计的控制台应用程序删除2017年数据

Step6:   Delete 2017 data using a console application designed by us

Step7 :    备份和还原 ProjectDB_BKP2010 作为要在以后使用的Checkpoint数据库

Step7:   Backup and Restore ProjectDB_BKP2010 as a Checkpoint Database to be used later

Step8 :    继续步骤6和步骤7,直到删除2011年数据为止,每次删除后,都将进行备份-还原以创建Checkpoint数据库.

Step8:   Continue Step6 and Step7 till 2011 data is deleted and after each deletion, a Backup-Restoration is done to create Checkpoint Databases.

方法的缺点:

Demerits of the Approach:

     ;                     由于UAT和PROD环境中的内容数据库 太大,那么用于复制的PowerShell命令(如上所述)会花费很多不希望的时间.

                Since the Content DBs in both UAT and PROD environments are too huge, the PowerShell command for Copy (mentioned above) with take a lot of undesirable time.

 

请与我们分享最佳做法,实现上述要求的方法.

推荐答案

Priyabrata,

Hi Priyabrata,

除了使用PowerShell移动网站集之外,您可以尝试使用内容部署"功能来做到这一点.

Except moving site collections using PowerShell, you can try to use Content Deployment feature to do that.

关于内容部署,您可以参考:

About Content Deployment, you can refer to:

https://blogs.technet.microsoft.com/tothesharepoint/2013/07/15/changes-to-content-deployment-in-sharepoint-server-2013/

或者,您可以使用此CodePlex解决方案移动要在每个单独的SiteCollection中拥有的库:

Or, you can use this CodePlex solution to moving libraries that you want to have in each individual SiteCollection:

https://spdeploymentwizard.codeplex.com/

谢谢

温迪


这篇关于将SharePoint网站集拆分为多个网站集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆