Chinaunix首页 | 论坛 | 博客
  • 博客访问: 8350869
  • 博文数量: 444
  • 博客积分: 10593
  • 博客等级: 上将
  • 技术积分: 3852
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-09 15:26
文章分类

全部博文(444)

文章存档

2014年(1)

2013年(10)

2012年(18)

2011年(35)

2010年(125)

2009年(108)

2008年(52)

2007年(72)

2006年(23)

分类: 系统运维

2008-05-10 11:57:34

用STSADM工具全自动备份sharepoint站点
************************************************************************

论坛上一直有网友关心如何给站点做一个自动备份,每天自动定时备份,自动将备份文件通过局域网传输到另一台机器上,并且备份文件保存一周。

近期刚结束了一个项目,正好有时间,就把自动备份给实现了,下面是实现的思路分析和方法:

首先分析一下需求:

1.自动备份,用windows自带的计划任务就可以;

2.备份后将备份文件传输到局域网的另一台机器上,用映射网络驱动器、copy命令行能实现;

3.备份文件保存一周,这个实现起来就比较难了,如何让dos自动删除掉一周前的文件呢?

想了好久也没有办法,不过后来发现,如果把备份当天是“星期几”这个信息作为备份文件名的一部分,就能实现!

在网络上找到了一篇文章,讲解的是怎么在dos命令行里面取当天是“星期几”的案例:
http://hi.baidu.com/jfioe/blog/item/acf053f44b6a196cdcc474c9.html

其中讲到:
“输出 %date%是一个参数 但是他后面带的这些就是取值范围,说说后面的数值 第一个0代表从头开始 后面的3代表共取3个字符
C:\>echo %date:~-3%
星期三
这里面的负数代表倒数,也就取最后3个字符


OK,既然思路和实现的方法都搞清晰了,那最后的实现也就不困难了!

大家看我的备份文件backup000.cmd吧:

----------------------------备份文件开始----------------------------

X:\STSADMbackup\stsadm.exe -o backup -url -filename X:\STSADMbackup\sharepoint%date:~-3%.data -overwrite

注释:其中“X:\STSADMbackup\“是备份工具:STSADM.EXE的绝对路径;
“sharepoint%date:~-3%.data”是备份文件名,其中的“%date:~-3%”为当前的日期;

net use Y: \\172.*.**.**\sharename$ "******" /user:administrator

注释:映射网络网络驱动器的dos命令行;


copy X:\stsadmbackup\*%date:~-3%.data.* Y:\stsadmbackup\ /Y

注释:将所有当天的备份文件上传到网络驱动器中,其中用*%date:~-3%.data.* 来区分之前和当天的备份文件,大体意思是复制目录中所有文件名包含*%date:~-3%.data.*的文件,到网络驱动器中。

----------------------------备份文件结束----------------------------

将中间的注释去掉,复制到TXT文件里面,保存为后缀是CMD格式的文件,就可以测试一下了!


这样三个简单的命令,就实现了自动备份、自动复制和备份文件保存一周的功能;

在计划任务设置里面就很简单了。
另外,手工备份方法如下:
通过“stsadm”命令
          1)backup、restore和export、import两种命令有什么区别?(就我知道在字面上有“站点”和“网站”的差别,对于“网站”具体包括的范围我并不太了解)
  2)在使用backup备份的时候,如何既指定备份的网站路径,同时也可以指定存储路径?(就我目前做测试:如果不指定存储路径,它默认的存放在STSADM同一目录下)
      stsadm.exe -o backup -url -filename backup.dat -overwrite
      stsadm.exe -o backup -directory c:\backup -backupmethod  full
.在我备份其中一个端口网站时,是否需要同时备份“共享服务管理”SSP?
我的答复是:共享服务管理SSP也有一个数据库,你可以备份SSP站点端口的数据.
2.当我做数据迁移的时候(恢复到另一个域环境中的MOSS平台),是否可以只备份和还原一个端口的数据?
我的答复是:是不够的,你需要备份80端口是SSP端口的数据.
3.“stsadm”命令的backup、restore和export、import两种参数有什么区别?
我的答复是:backup\restore两个参数是针对网站集的备份,export\import两个参数是针对子网站的备份;
例如:stsadm -o backup -url -filename d:\sharepoint\backup.dat -overwrite
是针对网站集的备份
stsadm -o export -url -filename d:\sharepoint\backup-km.dat -overwrite
是针对网站集下子网站的备份
见图片!!


4.在使用backup备份的时候,如何既指定备份的网站路径,同时也可以指定存储路径?
我的答复是:可以,我一直是这么做的,只是存储路径不能为中文,否则会出错.
5.在使用restore还原跟“backup备份”的问题一样????如何解决?
我的答复是:您遇到了什么问题?有什么样的错误?
6.是否可以直接备份SQL数据库?
我的答复是:可以的!我用SQL数据库每周做一次完整备份!!看图片

7.备份、还原的时候有哪些需要特别注意的地方?
我的答复是:注意常备份,同时备份文件多了以后,又要注意及时删除旧的备份文件,否则很占空间
阅读(1466) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

sdwjian2008-07-28 13:29:16

stsadm -o restore -url http://www.sharepoint.org.cn -filename d:\sharepoint\backup.dat -overwrite