CREATE  PROCEDURE [dbo].[SP_DBBackup_EveryNight_Local]
@cycle INT, ---保存周期
@IsLocal INT, ---是否为本地 0表示是 1表示否
@SavePath NVARCHAR(100), ---文件保存路径 \\192.168.19.1\DataBaseBack
@DBPrefix NVARCHAR(50), ---生成文件的前缀
@Server VARCHAR(50), ---服务器IP 192.168.19.1
@UserName VARCHAR(50), ---登录服务器用户名 administrator
@PassWord VARCHAR(20) ---登录服务器密码 2016
AS
BEGIN
DECLARE @backpath2 VARCHAR(100)
DECLARE @command VARCHAR(200) --创建临时表
CREATE TABLE #Filetabel
(
FILEPATH VARCHAR(100) NULL
)
--调用dos命令登录服务器
IF @IsLocal = 1
BEGIN
SET @command = 'net use ' + @SavePath + ' ' + @PassWord + ' /user:' + @Server + '\' + @UserName
EXEC master..xp_cmdshell @command
END
--将共享目录所有文件名添加至临时表
SET @command = 'dir /b ' + @SavePath
INSERT INTO #Filetabel
EXEC master..xp_cmdshell @command DELETE FROM #Filetabel
WHERE FILEPATH IS NULL WHILE EXISTS ( SELECT *
FROM #Filetabel )
BEGIN
DECLARE @fileName VARCHAR(100)
SET @fileName = ( SELECT TOP 1
*
FROM #Filetabel
ORDER BY FILEPATH
)
--定义变量获取文件时间
DECLARE @fileTime VARCHAR(20)
DECLARE @fDateTime DATETIME
IF @fileName IS NOT NULL
BEGIN
SET @fileTime = SUBSTRING(@fileName, 17, 8)
SET @fDateTime = CONVERT(DATETIME, @fileTime)
DECLARE @lastTime DATETIME
SET @lastTime = DATEADD(DAY, -@cycle,
CONVERT(VARCHAR(10), GETDATE(), 111))
IF @fDateTime <= @lastTime
BEGIN
--删除备份
DECLARE @filePath VARCHAR(100)
SET @filePath = 'del ' + @SavePath + '\' + @fileName
EXEC master..xp_cmdshell @filePath
END --删除该条数据
DELETE FROM #Filetabel
WHERE FILEPATH = @fileName
END
END --删除临时表
DROP TABLE #Filetabel
--将数据库备份到服务器
SET @backpath2 = @SavePath + '\' + @DBPrefix + '_' + REPLACE(CONVERT(VARCHAR(10), GETDATE(), 120),
'-', '') + '_back.bak'
BACKUP DATABASE [LGS] TO DISK=@backpath2 WITH INIT ,FORMAT
END
GO

  

执行EXEC [dbo].[SP_DBBackup_EveryNight_Local] 5,0,'F:\LGS_Back','LGS','','',''

sql server 定时备份数据库的更多相关文章

  1. SQL Server 2008备份数据库失败,拒绝访问的原因

    原文:SQL Server 2008备份数据库失败,拒绝访问的原因 备份数据到特定目录是出现拒绝访问,然后测试备份到C盘根目录正常. 查了下原因: 是因为那个目录没有Authenticated Use ...

  2. SQL Server 远程备份数据库

    在一些涉及到数据库的项目中,经常会有定时备份数据库的需要.定时备份到本机的话,还是挺容易的,计划任务就可以完成,但如果是整机挂了,那备份到本机是没意义的,那么就需要来考虑备份到局域网中,其它电脑里. ...

  3. Sql Server自动备份数据库,定期删除备份

    //实现:每天自动备份数据库,定期删除备份 //步骤:[开始]--[所有程序]--[Microsoft SQL Server 2005]--[SQL Server Management Studio] ...

  4. sql server 压缩备份数据库

    转自 https://www.cnblogs.com/527289276qq/p/6273291.html 今天需要把一个省外项目的数据库从服务器上备份.拷贝到本机(跨地域传输数据库备份文件). 连上 ...

  5. sql server 批量备份数据库

    很多时候,我们都需要将数据库进行备份,当服务器上数据库较多时,不可能一个数据库创建一个定时任务进行备份,这时,就需要进行批量的数据库备份操作,好了,废话不多说,具体实现语句如下: --开启文件夹权限 ...

  6. sql server 批量备份数据库及删除N天前的备份数据

    很多时候,我们都需要将数据库进行备份,当服务器上数据库较多时,不可能一个数据库创建一个定时任务进行备份,这时,就需要进行批量的数据库备份操作,好了,废话不多说,具体实现语句如下: 1 2 3 4 5 ...

  7. sql server异地备份数据库

    --注意:异地备份数据库,需要先开启备份文件夹的网络共享,数据库选择master --打开允许执行xp_cmdshell exec master..xp_cmdshell 'net use \\192 ...

  8. sql server 定时备份 脚本

    ) DECLARE @date DATETIME SELECT @date = GETDATE() SELECT @filename = 'G:\backup\NewPlulishSQL-' + CA ...

  9. SQL Server 2008 备份数据库

    1.打开SQL , 找到要备份的数据库 , 右键 >> 任务 >>备份 2.弹出 [ 备份数据库对话框 ] ,如图: 3.点击加入 [ button ] . 例如以下图: 4. ...

随机推荐

  1. acdream 1430 SETI 后缀数组+height分组

    这题昨天比赛的时候逗了,后缀想不出来,由于n^2的T了,就没往后缀数组想--并且之后解题的人又说用二分套二分来做.然后就更不会了-- 刚才看了题解,唉--原来题讲解n^2的也能够过,然后就--这样了! ...

  2. PathRemoveFileSpec 函数的作用:将路径末尾的文件名和反斜杠去掉(与GetModuleFileName配合)

    PathRemoveFileSpec 函数的作用:将路径末尾的文件名和反斜杠去掉. 例如,我们想获取EXE文件自身所在的文件夹,可以这样: #include <stdio.h> #incl ...

  3. Linux中的zip与scp

    现在只是学会基本操作,不深究各个参数的含义 一般操作目录时,都有一个-r代表递归操作整个目录下的所有内容 压缩一个目录test到test.zip zip -r test test.zip 解压test ...

  4. JDBC连接数据库中CallableStatement执行有参存储过程及注解其他

    Oracle的建有参存储过程的过程 procedure pro_01(v_01 in number,v_02 out varchar2) as begin select name into v_02 ...

  5. array=nil 和 Array=[[NSMutableArray alloc]init]; 的区别

    情况1: array=nil; [_PayArray addObject:BillDetail]; 此时array还是nil:因为array没有分配地址应该. 情况2: Array=[[NSMutab ...

  6. A GUIDE TO UNDERSTANDINGDISCRETIONARY ACCESS CONTROL INTRUSTED SYSTEMS

    1. INTRODUCTION   The main goal of the National Computer Security Center is to encourage the widespr ...

  7. 【noip模拟】Fancy Signal Translate (暴力 + 哈希)

    题目描述 FST是一名可怜的 OIer,他很强,但是经常 fst,所以 rating 一直低迷. 但是重点在于,他真的很强!他发明了一种奇特的加密方式,这种加密方式只有OIer才能破解. 这种加密方式 ...

  8. cxf整合spring发布rest服务 httpclient访问服务

    1.创建maven web项目并添加依赖 pom.xml <properties> <webVersion>3.0</webVersion> <cxf.ver ...

  9. 苹果抛弃的芯片公司Imagination被中资49亿溢价收购

    原标题:中国资本Canyon Bridge出资5.5亿英镑收购Imagination芯片 来源:观察者网 对于一家手机硬件公司来说,被苹果看上可谓是“一夜之间,鸡犬升天”.但是如果被苹果抛弃了呢?那可 ...

  10. 一个自己犯的react错误

    在看<react小书>高阶组件一节的时候,看到如下代码 import React, { Component } from 'react' export default (WrappedCo ...