SharePoint【学习笔记】-- 如何把网站集从Testing服务器移动到Production服务器(相同的Farm)
2013-02-20 20:51
435 查看
如果你想要把你的Sharepoint网站集从测试服务器移动到生产服务器上,根据网上的资料,有多种方式可以实现,这里我测试了使用STSADM的方式进行移动(此方式微软好像不太推荐,尤其是在跨Farm进行移动时会存在问题,不过此处我们只是在同一Farm的不同服务器上操作,所以问题不大,实际上,我们提到“移动Moving”,应该是在同一Farm的环境下操作,如果是跨不同的Farm操作,准确的用语应该是 Migration/Updating)。下面直接描述操作步骤。
步骤一、使用STSADM Command备份Testing服务器上的Website Collection
用此命令前,可以参考我的另一篇笔记
SharePoint【学习笔记】-- 如何在系统Path中添加STSADM的快速引用(Add STSADM in path)
备份时使用的STSADM Command如下:
Stsadm –o backup –url http://<server name>:<port> -filename <path\name to be used for the backup file>
Example:
tsadm –o backup –url http://sharepoint2010:6666 –filename "e:\backup6666.bak"
述命名中: http://sharepoint2010:6666 就是你想要备份的Website Collection,如果备份操作顺利完成,就会显示 “Operation Completed Successfully”
有直接使用此命令,而是在Testing 服务器的C:\下创建了一个批处理文件(BackupMySP2010.BAT),代码内容如下:
@echo off
@echo ---------------
@echo This script will backup your site: [http:// sharepoint2010:6666]
@echo ---------------
cd C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN
@echo locking site collection before the backup process starts
@echo off
stsadm -o getsitelock –url http:// sharepoint2010:6666
stsadm -o setsitelock –url http:// sharepoint2010:6666 -lock readonly
@echo site collection is now locked
@Echo Logic to create a new file name daily
@echo off
stsadm.exe -o backup –url http:// sharepoint2010:6666 -filename D:\ SPBackup\MySP2010Backup.dat -overwrite
@echo backup completed
@echo please get backup file in folder filename D:\ SPBackup\MySP2010Backup\ MySP2010Backup.dat
@echo off
stsadm -o setsitelock -url http:// sharepoint2010:6666 -lock none
@echo Site lock removed
cd C:\
接运行此文件即完成Website Collection的备份操作
步骤二、在生产服务器上创建Web Application用于运行将要恢复的网站集
入生产服务器 Sharepoint的Central Administration -> Application Management -> under SharePoint Web Application Management -> click Create or Extend Web Application. 填写需要的信息,然后点 Ok 等待Web Application创建命令执行完毕
步骤 三、当Web Application创建成功后,运行 STSADM 恢复我们先前备份的Website Collection。
1.把先前备份Testing服务器上的Website Collection 文件D:\ SPBackup\MySP2010Backup\ MySP2010Backup.dat 复制到生产机上的指定目录下(当然,如果两机共享,你也可通过网络直接访问而省掉此步),本例我们复制到生产机的目录D:\ SPBackup\MySP2010Restore\
2.使用如下STSADM Command命令恢复备份的网站集
Stsadm –o restore –url http://<server>:<port> -filename <path\name of the backup file>
Example:
Stsadm –o restore –url http:// sharepoint2010:6666 –filename " D:\ SPBackup\MySP2010Restore\ MySP2010Backup.dat"
针对此步,我依然使用了批处理命令文件(RestoreMySP2010.Bat),代码内容如下:
@echo off
@echo ---------------
@echo This script will Restore your site: [http:// sharepoint2010:6666 ]
@echo ---------------
cd C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN
@echo locking site collection before the backup process starts
@echo off
stsadm -o getsitelock -url http:// sharepoint2010:6666
stsadm -o setsitelock -url http:// sharepoint2010:6666 -lock readonly
@echo site collection is now locked
@echo off
stsadm.exe -o restore –url http:// sharepoint2010:6666 -filename D:\ SPBackup\MySP2010Restore\ MySP2010Backup.dat
@echo Restore completed
@echo The backup file is from folder D:\ SPBackup\MySP2010Restore\ MySP2010Backup.dat
@echo off
stsadm -o setsitelock –url http:// sharepoint2010:6666 -lock none
@echo Site lock removed
cd C:\
直接执行此文件,自动完成恢复Website Collection的工作。
步骤 四. 如果恢复工作没成功,或者你在恢复完成后访问网站时遇到了一些奇怪的错误提示信息,这种情况,多半都是因为你原先的网站集有用户个性化的内容或设置,此类情况只有具体问题具体处理,针对不同的个性化内容进行相应的部署和操作,以达到和测试服务器上一致的个性化效果 。
下面我们列出最常见的处理情况。
1.部署用户的Solution(如果有的话)到生产机上.
1.1 使用STSADM命令先把用户Solution部署到服务器场上
stsadm –o addsolution –filename <path to mysolution.wsp>
Example:
stsadm -o addsolution -filename "D:\SP1DEVshare\Solution\bin\Debug\mysolution.wsp"
如果此Solution已经部署过了,则要先删除再部署,删除命令是
stsadm -o deletesolution -name "mysolution.wsp" -override
1.2 再使用STSADM命令把Solution部署到用户前面恢复的Web Collection上
stsadm -o deploysolution -name mysolution.internet.test.wsp -url <site> -immediate -allowgacdeployment –allowcaspolicies
Example:
stsadm -o deploysolution -name StarMaidSpSolutions.wsp -url http:// sharepoint2010:6666 -allowgacdeployment -immediate
此步骤也可以使用Sharepoint 管理中心的System SettingsàFarm ManagementàManage Farm Solution来完成,操作程序是: 选择要部署的 solution ,点击 顶上的‘Deploy’ 按钮,选择需要部署到的Web Application并确定。然后管理中心开始执行你的部署操作,这可能要花上几分钟。此过程完成后,要记得重新启动 IIS以使得刚才的部署快速生效。
2. 确保你移动的Web Collection所要用到的所有的Asssemblies (DLL)也存在于生产机的GAC(Global Assembly Cache)中
GAC通常位于c:\windows\assembly目录。
3.激活用户Solution所涉及到的features.
在用户新部署的Web Collection中,Site Actionsà Site Settingsà Site Collection Featuresà
点击Activate按钮以激活相应的Site Collection Features
4.更新 Web.Config 文件
当用户的Solution添加DLLS时,我们需要修改Web.config,使它们注册为安全的Contol(Safe Controls)。可能还有其它某些设置需要在Web.config中修改(AssemblyBindings, PageParserPaths and Keys)。此文件的错漏会导致我们新移植的Website Collection跳出许多奇怪的报错。我们通常的作法是同时打开生产机和测试机上的此Website Collection的Web.config文件,比较两者,然后用参照测试机上的Web.config文件,使用Copy /Paste在生产机的Web.config文件中完善遗漏掉的设置。
Web.config 通常可以在如下的路径下找到: <drive letter>:\Inetpub\wwwroot\wss\VirtualDirectories\<port number>\web.config
Example: C:\Inetpub\wwwroot\wss\VirtualDirectories\6666\web.config
通常此步骤做完,新移植的Website Collection就可以在生产服务器上运行了。
步骤一、使用STSADM Command备份Testing服务器上的Website Collection
用此命令前,可以参考我的另一篇笔记
SharePoint【学习笔记】-- 如何在系统Path中添加STSADM的快速引用(Add STSADM in path)
备份时使用的STSADM Command如下:
Stsadm –o backup –url http://<server name>:<port> -filename <path\name to be used for the backup file>
Example:
tsadm –o backup –url http://sharepoint2010:6666 –filename "e:\backup6666.bak"
述命名中: http://sharepoint2010:6666 就是你想要备份的Website Collection,如果备份操作顺利完成,就会显示 “Operation Completed Successfully”
有直接使用此命令,而是在Testing 服务器的C:\下创建了一个批处理文件(BackupMySP2010.BAT),代码内容如下:
@echo off
@echo ---------------
@echo This script will backup your site: [http:// sharepoint2010:6666]
@echo ---------------
cd C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN
@echo locking site collection before the backup process starts
@echo off
stsadm -o getsitelock –url http:// sharepoint2010:6666
stsadm -o setsitelock –url http:// sharepoint2010:6666 -lock readonly
@echo site collection is now locked
@Echo Logic to create a new file name daily
@echo off
stsadm.exe -o backup –url http:// sharepoint2010:6666 -filename D:\ SPBackup\MySP2010Backup.dat -overwrite
@echo backup completed
@echo please get backup file in folder filename D:\ SPBackup\MySP2010Backup\ MySP2010Backup.dat
@echo off
stsadm -o setsitelock -url http:// sharepoint2010:6666 -lock none
@echo Site lock removed
cd C:\
接运行此文件即完成Website Collection的备份操作
步骤二、在生产服务器上创建Web Application用于运行将要恢复的网站集
入生产服务器 Sharepoint的Central Administration -> Application Management -> under SharePoint Web Application Management -> click Create or Extend Web Application. 填写需要的信息,然后点 Ok 等待Web Application创建命令执行完毕
步骤 三、当Web Application创建成功后,运行 STSADM 恢复我们先前备份的Website Collection。
1.把先前备份Testing服务器上的Website Collection 文件D:\ SPBackup\MySP2010Backup\ MySP2010Backup.dat 复制到生产机上的指定目录下(当然,如果两机共享,你也可通过网络直接访问而省掉此步),本例我们复制到生产机的目录D:\ SPBackup\MySP2010Restore\
2.使用如下STSADM Command命令恢复备份的网站集
Stsadm –o restore –url http://<server>:<port> -filename <path\name of the backup file>
Example:
Stsadm –o restore –url http:// sharepoint2010:6666 –filename " D:\ SPBackup\MySP2010Restore\ MySP2010Backup.dat"
针对此步,我依然使用了批处理命令文件(RestoreMySP2010.Bat),代码内容如下:
@echo off
@echo ---------------
@echo This script will Restore your site: [http:// sharepoint2010:6666 ]
@echo ---------------
cd C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN
@echo locking site collection before the backup process starts
@echo off
stsadm -o getsitelock -url http:// sharepoint2010:6666
stsadm -o setsitelock -url http:// sharepoint2010:6666 -lock readonly
@echo site collection is now locked
@echo off
stsadm.exe -o restore –url http:// sharepoint2010:6666 -filename D:\ SPBackup\MySP2010Restore\ MySP2010Backup.dat
@echo Restore completed
@echo The backup file is from folder D:\ SPBackup\MySP2010Restore\ MySP2010Backup.dat
@echo off
stsadm -o setsitelock –url http:// sharepoint2010:6666 -lock none
@echo Site lock removed
cd C:\
直接执行此文件,自动完成恢复Website Collection的工作。
步骤 四. 如果恢复工作没成功,或者你在恢复完成后访问网站时遇到了一些奇怪的错误提示信息,这种情况,多半都是因为你原先的网站集有用户个性化的内容或设置,此类情况只有具体问题具体处理,针对不同的个性化内容进行相应的部署和操作,以达到和测试服务器上一致的个性化效果 。
下面我们列出最常见的处理情况。
1.部署用户的Solution(如果有的话)到生产机上.
1.1 使用STSADM命令先把用户Solution部署到服务器场上
stsadm –o addsolution –filename <path to mysolution.wsp>
Example:
stsadm -o addsolution -filename "D:\SP1DEVshare\Solution\bin\Debug\mysolution.wsp"
如果此Solution已经部署过了,则要先删除再部署,删除命令是
stsadm -o deletesolution -name "mysolution.wsp" -override
1.2 再使用STSADM命令把Solution部署到用户前面恢复的Web Collection上
stsadm -o deploysolution -name mysolution.internet.test.wsp -url <site> -immediate -allowgacdeployment –allowcaspolicies
Example:
stsadm -o deploysolution -name StarMaidSpSolutions.wsp -url http:// sharepoint2010:6666 -allowgacdeployment -immediate
此步骤也可以使用Sharepoint 管理中心的System SettingsàFarm ManagementàManage Farm Solution来完成,操作程序是: 选择要部署的 solution ,点击 顶上的‘Deploy’ 按钮,选择需要部署到的Web Application并确定。然后管理中心开始执行你的部署操作,这可能要花上几分钟。此过程完成后,要记得重新启动 IIS以使得刚才的部署快速生效。
2. 确保你移动的Web Collection所要用到的所有的Asssemblies (DLL)也存在于生产机的GAC(Global Assembly Cache)中
GAC通常位于c:\windows\assembly目录。
3.激活用户Solution所涉及到的features.
在用户新部署的Web Collection中,Site Actionsà Site Settingsà Site Collection Featuresà
点击Activate按钮以激活相应的Site Collection Features
4.更新 Web.Config 文件
当用户的Solution添加DLLS时,我们需要修改Web.config,使它们注册为安全的Contol(Safe Controls)。可能还有其它某些设置需要在Web.config中修改(AssemblyBindings, PageParserPaths and Keys)。此文件的错漏会导致我们新移植的Website Collection跳出许多奇怪的报错。我们通常的作法是同时打开生产机和测试机上的此Website Collection的Web.config文件,比较两者,然后用参照测试机上的Web.config文件,使用Copy /Paste在生产机的Web.config文件中完善遗漏掉的设置。
Web.config 通常可以在如下的路径下找到: <drive letter>:\Inetpub\wwwroot\wss\VirtualDirectories\<port number>\web.config
Example: C:\Inetpub\wwwroot\wss\VirtualDirectories\6666\web.config
通常此步骤做完,新移植的Website Collection就可以在生产服务器上运行了。
相关文章推荐
- Sharepoint学习笔记-- 如何把网站集从Testing服务器移动到Production服务器(相同的Farm)
- Sharepoint学习笔记---Debug&TroubleShooting-如何让Sharepoint2010网站返回详细错误信息
- Sharepoint学习笔记--如何定位网站集所在的w3wp进程
- Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(报表登录处理)
- Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示图片)
- Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据 二)
- Nginx 学习笔记(一)如何配置一个安全的HTTPS网站服务器
- Sharepoint学习笔记--如何定位网站集所在的w3wp进程
- Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据 一)
- Sharepoint学习笔记--Farm Backup Error:Administration 2010 Service is not started
- Sharepoint学习笔记---Linq to Sharepoint--如何获取Linq Query 生成的CALM
- SharePoint【学习笔记】-- 计算列如何使用Item的ID
- Sharepoint学习笔记---如何找到SharePoint List的Template ID
- sharepoint 2016 学习系列篇(8)-如何修改网站标题以及Logo
- MOBILE FIRST: HOW TO APPROACH MOBILE WEBSITE TESTING? 移动优先:如何处理移动网站测试?
- sharepoint 2016 学习系列篇(4)-如何部署sharepoint server 2016(3)-Sharepoint服务器安装和部署
- sharepoint 2016 学习系列篇(9)-如何创建子网站Create sub site
- SharePoint【学习笔记】-- 添加一个相同功能的列表事件接收器到多个列表
- Sharepoint学习笔记---Linq to Sharepoint--如何获取Linq Query 生成的CALM
- HTML学习笔记——如何让图片随鼠标移动