SharePoint 2013开发/测试/生产环境 - 移动内容的最佳实践

时间:2013-08-30 20:48:43

标签: sharepoint-2013

我正在为客户开发SP2013项目,我需要为开发,测试和生产建立一个工作环境。让我们假设为了简单起见,工作只包含各种自定义(列表,库,应用程序,主题等),而不是代码。

我的设置如下: 生产环境位于客户站点的某些服务器上 测试环境在Azure中设置 开发环境在我的PC上的虚拟机上

现在,让我们假设在每个环境中都能正确设置所有内容,我希望能够支持以下任务:

  1. 我在我的开发环境中进行自定义,并希望将其部署在测试中供其他人测试,优先使用现有数据进行测试
  2. 经过测试和质量保证,我想从测试部署到生产部门。这当然只会影响自定义,而不会影响现有数据
  3. 我偶尔会拍摄生产环境的快照并将其移动进行测试,以便尽可能真实地完成开发中新功能的部署
  4. 我希望尽可能顺利,高效地执行这些任务,尤其是在从开发部署到经常进行的测试时。从测试到生产的部署不会经常进行,因此可以容忍一些更多的手工工作。

    我知道一些可能相关的机制:

    1. 内容部署
    2. 跨网站发布
    3. 内容数据库备份/恢复
    4. 将网站另存为模板,导出wsp并导入
    5. (最后的手段)手动设置每个自定义
    6. 您是否有经验的SharePoint开发人员/管理员可以就哪种情况下使用哪种机制,何时不使用等提出一些建议?是否还有其他方法需要提及?请记住,这三个环境位于独立的物理环境中,这可能会使完全自动化的解决方案变得困难。如果我在客户站点(即同一个服务器场的一部分)上设置测试环境,它会更容易吗?

2 个答案:

答案 0 :(得分:2)

根据您的特定自定义,另一个选项可能是第三方工具。那里有很多。 ShareGate是我个人一直用于迁移工作的,并且在环境之间快速移动内容似乎非常简单有效。 Attunity Repliweb for SharePoint是另一个值得关注的,可用于您需要的那种特定于开发的发布工作。

至于本地选项,我仍然找到了我的方式,但这是我的建议:

  • 在可能的情况下,我使用Visual Studio创建了包含部署功能部件的功能的解决方案包。例如,品牌解决方案包可能包含部署自定义母版页,主题/外观文件,常用JavaScript库和图像的若干功能。

  • 功能部署使您可以轻松地在环境之间部署或删除功能,并在站点之间重用功能。此外,您可以将Visual Studio解决方案添加到源控制系统,如VS Online或GitHub。

  • 对于一个关闭的网站,我创建了一个开发站点,配置它然后使用内置的SharePoint备份和还原将其部署到prod。已在dev中创建后续更改,然后手动应用于test和prod。这取决于定制,这非常耗时。您可以将其与ShareGate等工具结合使用,以自动部署各个工件,例如从一个环境到另一个环境的自定义列表。

  • 对于移动内容,我一直在使用ShareGate和文件等文件以及Boost Solutions Excel Import来处理列表数据。这允许我将大量列表数据导出到excel并轻松地将其重新导入到新列表中,该列表可能是我已添加新功能的副本,以准备替换旧的prod列表或者我正在填充的dev / test列表在进行完整站点备份以恢复生产之前。

祝你好运,希望其中一些建议对您有用!我将关注此问题,因为我也有兴趣了解管理SharePoint开发周期的更好方法/习惯。

答案 1 :(得分:0)

我完成了为自己维护的SharePoint 2013生产环境的开发环境的设置。最后一步是将生产内容移至开发环境。我不得不四处寻找以找到PowerShell等。我决定下次写一个博客,而不是下次再讨论它,以便将所有步骤都放在一个地方。

第一步是备份要还原到开发中的内容数据库。为此,请打开SQL Server Management Studio,右键单击要备份的数据库,将鼠标悬停在任务上,然后选择“备份”。将显示“备份数据库”窗口。确保备份类型设置为完整,为备份命名或保留默认名称,并记下或更改目标。

如果已运行计划的备份并且能够访问备份驱动器,则可以跳过这些步骤。在这种情况下,只需获取最新完整备份的副本,然后将其复制到您的开发SQL Server中即可。

下一步是将数据库还原到开发中。为此,请在开发环境中打开SQL Server Management Studio,右键单击Databases文件夹,然后选择Restore Database。当出现“还原数据库”窗口时,单击“设备”单选按钮,然后单击文本框旁边的省略号。这将打开“选择备份设备”窗口。从那里单击“添加”,找到您的备份文件,然后单击“确定”,再次单击“确定”以返回到“还原数据库”窗口,最后从那里单击“确定”。现在,您的数据库已还原,您可以将其添加到SharePoint。

如果您还没有其中不想要的内容,请创建一个新的Web应用程序…

https://sharepointv15.wordpress.com/2012/07/24/create-a-web-application-in-sharepoint-2013/

不用担心创建网站集。

现在转到管理中心,然后单击“应用程序管理”下的“管理内容数据库”。

rsd1

确保选择了正确的Web应用程序。如果不是单击Web应用程序名称旁边的下拉箭头,请单击“更改Web应用程序”,然后在显示的窗口中选择正确的Web应用程序。

rsd2

下一步,单击内容数据库名称

在“管理内容数据库设置”屏幕上,向下滚动,单击“删除内容数据库”复选框,在警告弹出窗口上单击“确定”,然后在屏幕底部单击“确定”。

rsd3

现在,您需要以管理员身份打开SharePoint 2013命令行管理程序。为此,请在开始菜单上单击,单击所有程序,再单击Sharepoint 2013文件夹,右键单击SharePoint 2013命令行管理程序,然后选择“以管理员身份运行”。

从这里您将运行Mount-SPContentDatabase cmdlet

-SPContentDatabase“ MyDatabase” -DatabaseServer“ MyServer” -WebApplication http://sitename

单击以下有关此cmdlt的详细信息…

http://technet.microsoft.com/en-us/library/ff607581.aspx

这时,您应该能够导航到Web应用程序URL,并查看位于刚安装的数据库中的网站集。

注意:这将在SharePoint 2010或SharePoint 2013中工作。但是,数据库必须与您尝试装入的服务器场的SharePoint版本相同。如果是较低版本,它将自动尝试对其进行升级,因此请记住这一点。 请点击以下链接。

https://sharepointv15.wordpress.com/2013/03/21/moving-content-between-environments/