网上一搜就有一大把,绝大多数是转载的,估计没有亲测,真正能用的还没几个。 =_=!
虽然都是二手知识,但你们对二手知识也太不负责了吧!
在Web管理页面上的备份与恢复就不说了,这里说用命令行调用工具stsadm来操作。
我的环境:Windows Server 2008 + MS SQL 2012 + Sharepoint 2010
微软官方的意思是:小于15GB的网站集建议用stsadm来备份。
备份命令:
c:
cd c:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN\
stsadm.exe -o backup -url http://sp2010:80 -filename d:\sp2010.bak -overwrite
其中,-overwrite:可选项,覆盖已存在的备份文件或网站集。
-overwrite会覆盖掉当前的内容!慎用!!
保险的做法是,备份和恢复的时候就不要让其他用户读写了,以免造成数据不一致。
注意1:
其中,stsadm是一款工具,并不是系统自带的,路径为
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN
在命令行上直接打stsadm是出不来的。办法是用sharepoint的sharepoint 2010 management powershell,或者进入上述路径以后再用stsadm,或者干脆就把上面那个路径添加到环境变量吧。
注意2:
尽管说网站集有个集合的意思,但每个用户(personal)的网站集并不是同一个。
这也就是我用stsadm按照网上很多例子,在命令行调用stsadm时,url写http://sharepoint_server:80,并没有把其他几个用户的网站集一起备份下来的原因。
注意3:
如果不知道自己有哪些网站集,可以用下面的命令列出所有网站集。
stsadm.exe -o enumsites -url http://sp服务器的地址
sp2010是一个网站集,personal下面还有几个用户的网站集。
我目前还没有找到那种可以一次性把所有网站集都备份的办法,所以暂时只能一个个地备份…
恢复
stsadm.exe -o restore -url http://xxx.xxx.xx -filename c:/back.dat -overwrite
据说,恢复的url应该和备份的url一致。
-overwrite会覆盖掉当前的内容!慎用!!