ms sql server 2000中的数据库备份问题

lgcsyq 2009-09-15 01:03:01
现在我们要把一个数据库进行每天做一次备份,但是要求把备份的数据库一个星期内不能覆盖以前备份好的数据库。也就是说,要保留每星期的每一天的备份文件。怎么要怎么设置。
...全文
89 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
lgcsyq 2009-10-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 macchen1224 的回复:]
你好,如果空間夠大,就直接做快照即可,謝謝。
[/Quote]
这样才能做快照
sharon8259 2009-09-15
  • 打赏
  • 举报
回复
在企业管理器中的维护计划里面做个维护计划可以的!
billpu 2009-09-15
  • 打赏
  • 举报
回复
1 每星期1次完整备份
2 每天1次差异备份
优点 总数据量小
缺点 数据冗余大(需要在完整备份基础上恢复)
比如你星期天完整备份,星期六的时候出错了 你想恢复到星期五,只需要1个完整备份和1个星期五的备份
一直不明白为啥sqlserver没有增强备份
另外注意日志文件的备份
sanyuanhongjun 2009-09-15
  • 打赏
  • 举报
回复
如果要达到楼主所提问题要求,我有个好的方法,应用SQLSERVER代理,编写备份数据的语句,每天调度执行就可以啦,在执行备份数据语句之前可以用CONVERT(CHAR(10),GETDATE(),120)函数的值作为变量,将此变量作为备份文件名。
zzz1975 2009-09-15
  • 打赏
  • 举报
回复
支持此方法,直接维护计划就是了!
[Quote=引用 8 楼 tgbd 的回复:]
在企业管理器中->数据库维护计划->新建,然后一步一步走,到“指定备份磁盘目录”那个页面时,看下端那里有个“删除早于此时间的文件”的检查选项,勾选中此, 根据需要设置一个时段就行了。
[/Quote]
tgbd 2009-09-15
  • 打赏
  • 举报
回复
在企业管理器中->数据库维护计划->新建,然后一步一步走,到“指定备份磁盘目录”那个页面时,看下端那里有个“删除早于此时间的文件”的检查选项,勾选中此, 根据需要设置一个时段就行了。
soft_wsx 2009-09-15
  • 打赏
  • 举报
回复
用数据库维护向导中设置一下!中文的,一看就明白了!
aoyihuashao 2009-09-15
  • 打赏
  • 举报
回复
看样子,楼主是只需要一周内的备份文件?上周的就应该删掉吧。

那可以判断星期几,星期日用完整备份,其他用差异备份。

文件名就用sunday.dat,重复的直接覆盖掉。


如果不是按周删除,而是要保存7天的数据的话,就全用完整备份。
soft_wsx 2009-09-15
  • 打赏
  • 举报
回复
soft_wsx 2009-09-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 lgcsyq 的回复:]
现在我们要把一个数据库进行每天做一次备份,但是要求把备份的数据库一个星期内不能覆盖以前备份好的数据库。也就是说,要保留每星期的每一天的备份文件。怎么要怎么设置。
[/Quote]
1、数据库的数据恢复模型设置为完全(不过日志增长很快)
2、在1基础上用作业+差异备份/日志备份(可还原到指定时间点/标记点)
--小F-- 2009-09-15
  • 打赏
  • 举报
回复
差异备份 
---------------------------------------------
(1)基于完全备份。
(2)备份自最近一次完全备份以来的所有数据库改变。
(3)恢复时,只应用最近一次完全备份和最新的差异备份。
-----------------------------------------------
backup database d2 to bak2 with init,name='d2_full' --差异备份,第一次备份时应做完全备份
create table b1(c1 int not null,c2 char(10) not null)
backup database d2 to bak2 with differential,name='d2_diff1'
insert b1 values(1,'a')
backup database d2 to bak2 with differential,name='d2_diff2'
insert b1 values(2,'b')
backup database d2 to bak2 with differential,name='d2_diff3'
insert b1 values(3,'c')
backup database d2 to bak2 with differential,name='d2_diff4'
restore headeronly from bak2
----------------------------------------------------------------------
macchen1224 2009-09-15
  • 打赏
  • 举报
回复
你好,如果空間夠大,就直接做快照即可,謝謝。
--小F-- 2009-09-15
  • 打赏
  • 举报
回复
直接做差异备份就行了

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧