sql server备份数据库

      数据是企业的重要信息,可能也是商业机密.所以我们一定要及时的作好备份,保重数据的安全.
下面是设计了一个存储过程来备份数据.如果要实现自动的备份你可以执行一个任务来自动的处理.
None.gif CREATE   procedure  AutoBackupDataBase
None.gif
-- WITH ENCRYPTION  加密
None.gif
As
None.gif
Begin
None.gif
declare   @Str   varchar ( 8 )
None.gif
declare   @Str_d   varchar ( 8 )
None.gif
declare   @Str_DB   varchar ( 100 )
None.gif
declare   @Str_DB_d   varchar ( 100 )
None.gif
declare   @Str_LOG   varchar ( 50 )
None.gif
Declare   @StrPath   varchar ( 50 )
None.gif
declare   @Name  sysname
None.gif
set   @Str = convert ( char ( 10 ), getdate (), 112 )
None.gif
set   @Str_d = convert ( char ( 10 ), getdate () - 7 , 112 )
None.gif
set   @StrPath   =    ' E:\BackupData\EveryDayBackup\ '
None.gif
declare  DBName  cursor   for   select  Name  from  master.dbo.sysdatabases  where  name = ' DG_DB '   or  name = ' HKbomdb '  
None.gif
open  DBName
None.gif
FETCH   NEXT   FROM  DBName  into   @Name
None.gif
WHILE   @@FETCH_STATUS   =   0
None.gif    
BEGIN
None.gif        
-- 删除7天以前的备份
None.gif
         set   @Str_DB_d   = ' del   ' + @StrPath + @Name + ' _DB ' + @Str_d  
None.gif        
print   @Str_DB_d
None.gif        
exec  master..xp_cmdshell  @str_db_d         
None.gif        
set   @Str_DB   = @StrPath + @Name + ' _DB ' + @Str
None.gif        
-- set @Str_LOG =@StrPath+@Name+'_LOG'+@Str
None.gif
         BACKUP   DATABASE   @Name   TO    DISK   =   @Str_DB   WITH   NOINIT ,  NOUNLOAD ,  NAME  =  N ' 所有数据库备份 ' ,  NOSKIP ,  STATS  =   10 ,  NOFORMAT
None.gif        
-- BACKUP LOG bdm TO  DISK = @Str_LOG WITH  NOINIT ,  NOUNLOAD ,  NAME = N'所有数据库日志备份',  NOSKIP ,  STATS = 10,  NOFORMAT,  NO_TRUNCATE 
None.gif
         FETCH   NEXT   FROM  DBName  INTO   @Name
None.gif    
END
None.gif
CLOSE  DBName
None.gif
DEALLOCATE  DBName
None.gif
None.gif
end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值