问个简单的备份与恢复!

fatwave 2004-01-12 12:16:03
我用SQL语句
如何实现定时(比如第周一10点),备份数据库并恢复到其它的数据库名中?
比如我现在的数据库名为DWCS,当备份完后马上恢复到数据库名为DWCSBACK中?
备份有完全备份与差异备份能分别举例吗?谢谢!!
...全文
27 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
txlicenhe 2004-01-12
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/2359/2359124.xml?temp=.4968531
数据库备份/恢复方案 邹建
fatwave 2004-01-12
  • 打赏
  • 举报
回复
谢谢你的帮助zjcxc(邹建) !
zjcxc 元老 2004-01-12
  • 打赏
  • 举报
回复
楼主参考我的贴子:

数据库备份/恢复方案:
http://expert.csdn.net/Expert/topic/2359/2359124.xml?temp=6.638736E-02

上面有一个方案,和楼主的要求差不多.
zjcxc 元老 2004-01-12
  • 打赏
  • 举报
回复
--上面是差异备份及恢复的例子,下面是创建作业的例子:

--创建作业
exec msdb..sp_add_job @job_name='数据处理'

--创建作业步骤
declare @sql varchar(800),@dbname varchar(250)
select @sql='exec p_createxml' --数据处理的命令
,@dbname=db_name() --执行数据处理的数据库名

exec msdb..sp_add_jobstep @job_name='数据处理',
@step_name = '数据同步',
@subsystem = 'TSQL',
@database_name=@dbname,
@command = @sql,
@retry_attempts = 5, --重试次数
@retry_interval = 5 --重试间隔

--创建调度
EXEC msdb..sp_add_jobschedule @job_name = '数据处理',
@name = '时间安排',
@freq_type=4, --4 每天,8 每周,16 每月
@freq_interval=1, --作业执行的天数
@freq_subday_type=0, --是否重复执行,0x1 在指定的时间, 0x4 分钟, 0x8 小时
@freq_subday_interval=1, --重复周期
@freq_recurrence_factor=0, --重复执行,则设置为1,否则设置为0
@active_start_time = 00000 --0点开始执行


zjcxc 元老 2004-01-12
  • 打赏
  • 举报
回复
/*--数据库差异备份/恢复
--*/

--清除环境
exec master..xp_cmdshell 'del c:\test.bak'
if exists(select * from master..sysdatabases where name='test')
drop database test
go

--创建数据库
create database test
go

--打开创建的数据
use test
go

--创建测试表
create table t(a int)

--切换回master数据库
use master
go

--插入数据1
insert into test..t select 1
go

--然后进行一次完整备份
backup database test to disk='c:\test.bak'
go

--插入数据2
insert into test..t select 2
go

--再进行一次完整备份
backup database test to disk='c:\test.bak'
go

--插入3,4
insert into test..t select 3
insert into test..t select 4
go

--差异备份:
backup database test to disk='c:\test.bak' with differential

--删除数据库
drop database test

--还原数据库和差异数据库备份
restore database test from disk='c:\test.bak' with file=2,norecovery
restore database test from disk='c:\test.bak' with file=3,recovery

--显示恢复后的数据
select * from test..t
fatwave 2004-01-12
  • 打赏
  • 举报
回复
请问有差异备份但有没有差异恢复??小弟我常在BCB版,今第一次来SQL版,还请高手指点!!
fatwave 2004-01-12
  • 打赏
  • 举报
回复
能写出SQL语句来吗!我想在查询器中测试!谢谢!

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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