一般情况下对IT管理者来说,在SharePointFarm中维护Feature,更喜欢使用命令行实现,这样可以省去登录到具体站点的操作。比如IT接到enduser的一个需求,要开启SiteCollectionFeature,如果直接操作......
2023-01-12
如果你想要把你的Sharepoint网站集从测试服务器移动到生产服务器上,根据网上的资料,有多种方式可以实现,这里我测试了使用STSADM的方式进行移动(此方式微软好像不太推荐,尤其是在跨Farm进行移动时会存在问题,不过此处我们只是在同一Farm的不同服务器上操作,所以问题不大,实际上,我们提到“移动Moving”,应该是在同一Farm的环境下操作,如果是跨不同的Farm操作,准确的用语应该是 Migration/Updating)。下面直接描述操作步骤。
步骤一、使用STSADM Command备份Testing服务器上的Website Collection
用此命令前,可以参考我的另一篇笔记(harepoint学习笔记-- 如何在系统Path中添加STSADM的快速引用(Add STSADM in path)))
备份时使用的STSADM Command如下:
Stsadm –o backup –url http://<server name>:<port> -filename <pathname 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 FilesCommon FilesMicrosoft SharedWeb Server Extensions14BIN
@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: SPBackupMySP2010Backup.dat -overwrite
@echo backup completed
@echo please get backup file in folder filename D: SPBackupMySP2010Backup 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: SPBackupMySP2010Backup MySP2010Backup.dat 复制到生产机上的指定目录下(当然,如果两机共享,你也可通过网络直接访问而省掉此步),本例我们复制到生产机的目录D: SPBackupMySP2010Restore
2.使用如下STSADM Command命令恢复备份的网站集
Stsadm –o restore –url http://<server>:<port> -filename <pathname of the backup file>
Example:
Stsadm –o restore –url http:// sharepoint2010:6666 –filename " D: SPBackupMySP2010Restore MySP2010Backup.dat"
针对此步,我依然使用了批处理命令文件(RestoreMySP2010.Bat),代码内容如下:
复制代码
@echo off
@echo ---------------
@echo This script will Restore your site: [http:// sharepoint2010:6666 ]
@echo ---------------
cd C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14BIN
@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: SPBackupMySP2010Restore MySP2010Backup.dat
@echo Restore completed
@echo The backup file is from folder D: SPBackupMySP2010Restore 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:SP1DEVshareSolutionbinDebugmysolution.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:windowsassembly目录。
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>:InetpubwwwrootwssVirtualDirectories<port number>web.config
Example: C:InetpubwwwrootwssVirtualDirectories6666web.config
通常此步骤做完,新移植的Website Collection就可以在生产服务器上运行了。
相关文章
一般情况下对IT管理者来说,在SharePointFarm中维护Feature,更喜欢使用命令行实现,这样可以省去登录到具体站点的操作。比如IT接到enduser的一个需求,要开启SiteCollectionFeature,如果直接操作......
2023-01-12
我们经常会在SharePoint网站集的权限列表中看到某个user有LimitedAccessPermission,但是我们都知道或者试过,在SharePointsitecollection中没有办法直接添加user赋予LimitedAccess权限,并且LimitedAccess这个......
2023-01-12
在这样的场景下,比如统计员工的个人信息,IT会在SharePoint中新建list,加一些需要填写的栏位,然后让公司员工登录填写。这时候比起大家都能看到彼此信息而言,从公司角度更想让员工只能......
2023-01-12
大多数企业使用SharePoint文档库时,都会建议EndUser在编辑文档前先做CheckOut动作,这样可以保证文档在当前用户编辑过程中,其他人只能view而不能edit,防止多人同时修改同一文件互相影响的......
2023-01-12
为了记录SharePointLibrary/List中file/Item的修改情况,ITAdministrator会在List/Library的VersionSettings中开启Version管控设置。之后用户每次编辑item/file保存就会生成一个新的version记录,这样我们就会知道......
2023-01-12