sql 备份到网上邻居上

  1  EXEC sp_configure  ' show advanced options '1    
  2 
  3  
  4 
  5  GO   
  6 
  7  
  8 
  9  RECONFIGURE   WITH OVERRIDE   
 10 
 11  
 12 
 13  GO 
 14 
 15  
 16 
 17  -- 以下写入作业
 18 
 19  
 20 
 21  EXEC sp_configure ' xp_cmdshell '1     
 22 
 23  GO   
 24 
 25  RECONFIGURE      
 26 
 27  GO 
 28 
 29  
 30 
 31  declare  @sql  varchar( 4000
 32 
 33  declare  @backupfile  varchar( 2000)
 34 
 35  declare  @retaindays  int
 36 
 37  declare  @now  datetime
 38 
 39  declare  @deletefiles  varchar( 2000)
 40 
 41  declare  @cmd  varchar( 2000)
 42 
 43  declare  @i  int
 44 
 45  
 46 
 47  
 48 
 49  declare  @User  varchar( 2000)
 50 
 51  declare  @Pwd  varchar( 2000)
 52 
 53  declare  @Store  varchar( 2000)
 54 
 55  declare  @IPPart  varchar( 2000)
 56 
 57  declare  @IP  varchar( 2000)
 58 
 59  
 60 
 61  
 62 
 63  set  @Store = ' EF_DATA '       -- 数据库名
 64 
 65  set  @User  = ' administrator '     -- 用户名(异地服务器)-----要管理员权限
 66 
 67  set  @Pwd  = ' abcd159357 '       -- 密码(异地服务器)-------密码不要有符号
 68 
 69  set  @IPPart = ' 数据交换 '         -- 路径(异地服务器的共享目录,此目录要有有上面用户的访问读写权限)
 70 
 71  set  @IP = ' 192.168.1.7 ' 
 72 
 73  set  @retaindays = 6          -- 要保留备份的天数
 74 
 75  
 76 
 77  
 78 
 79  -- 建立映射
 80 
 81  set  @cmd = ' net use x: \\ ' +  @IP  + ' \ ' +  @IPPart  +  '   ' +  @Pwd  + '  /user: ' +  @IP  + ' \ ' +  @User
 82 
 83  exec master..xp_cmdshell  @cmd
 84 
 85  
 86 
 87  
 88 
 89  -- 删除以前的备份
 90 
 91  set  @now = getdate()
 92 
 93  set  @i = 0
 94 
 95  while ( @i  <  30)
 96 
 97  begin
 98 
 99      set  @deletefiles  =  ' x:\* '  + convert( varchar( 8), dateadd(dd, - @retaindays - @i, @now), 112) + ' *.* '
100 
101      set  @cmd = ' del  '  +  @deletefiles
102 
103      exec master..xp_cmdshell  @cmd
104 
105      set  @i  =  @i  + 1
106 
107  end
108 
109  
110 
111  -- 开始备份
112 
113  set  @backupfile = ' x:\ ' +  @Store  +  ' _db_ ' +
114 
115      replace( replace( replace( convert( varchar, getdate(), 20), ' - ', ''), '   ', ''), ' : ', '') + ' .BAK '
116 
117  set  @sql = ' backup database  '  +  @Store  +  '  to disk= ''' + @backupfile + '''  with retaindays= ' + convert( varchar( 10), @retaindays)
118 
119  -- print @sql
120 
121  exec ( @sql)
122 
123  
124 
125  set  @backupfile = ' x:\ ' +  @Store  + ' _tlog_ ' +
126 
127      replace( replace( replace( convert( varchar, getdate(), 20), ' - ', ''), '   ', ''), ' : ', '') + ' .TRN '
128 
129  set  @sql = ' backup LOG  '  +  @Store  +  '  TO DISK= ''' + @backupfile + '''  with retaindays= ' + convert( varchar( 10), @retaindays)
130 
131  -- print @sql
132 
133  exec ( @sql)
134 
135  
136 
137  
138 
139  -- 删除映射
140 
141  exec master..xp_cmdshell ' net use x: /delete '
142 
143  
144 
145  -- 关闭允许执行xp_cmdshell
146 
147  EXEC sp_configure ' xp_cmdshell '0    
148 
149  GO     
150 
151  RECONFIGURE  WITH OVERRIDE    
152 
153  GO   

转载于:https://www.cnblogs.com/DKSoft/archive/2012/10/16/2726181.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值