MS SQL Server 定时任务实现自动备份

SQL Server Express 版本是没有SQL 代理服务的,从而导致不能使用SQL Server的定时自动备份功能。真心感觉这就是一个坑,虽然Express是学习的版本,但是精简的也太多了。另外一点不能忍受的是居然没有SQL Profile 监控执行语句数据功能,[手动cry]

好了,来说一下如果你使用了Express,如何进行SQL Server 的自动备份吧:

①方法就是:SQL备份数据库语句  +  windows 定时任务计划

②目录结构为:

③DBBacUp.bat  备份的脚本

set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2%
set PathDir="C:\数据库备份"
set "filename= %PathDir%\%YYYYmmdd%.log"

echo Start BackUp,Time: %date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2% >>%filename%

sqlcmd -S . -i C:\Users\JuanFei\Desktop\DBBackup.sql >>%filename%

echo. >>%filename%

DeleteTask.bat  删除7天前的,冗余备份,防止备份数据过多,占用空间

:: 删除7天以前的备份记录
set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2%
set PathDir="C:\数据库备份"

set "filename= %PathDir%\%YYYYmmdd%.log"

echo Start Delete,Time: %date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2% >>%filename%
forfiles /p %PathDir% /m *.bak /d -7 /c "cmd /c del /f @path"
forfiles /p %PathDir% /m *.log /d -7 /c "cmd /c del /f @path"

echo. >>%filename%

DBBackup.sql   重点:备份的SQL语句

GO
DECLARE @backupTime VARCHAR(20)
DECLARE @fileName VARCHAR(1000)  

SELECT @backupTime=(CONVERT(VARCHAR(8), GETDATE(), 112) +REPLACE(CONVERT(VARCHAR(5), GETDATE(), 114), ‘:‘, ‘‘))  

SELECT @fileName=‘c:\数据库备份\PX_Traceability_‘+@backupTime+‘.bak‘
backup database PX_Traceability to disk=@fileName with INIT,COMPRESSION

④使用windows任务计划创建定时任务

参考地址:https://jingyan.baidu.com/article/154b463130041128ca8f41c7.html

网上教程很多,就不赘述了,如果有不懂得,可以评论提问联系我

原文地址:https://www.cnblogs.com/lijuanfei/p/9678757.html

时间: 2024-08-27 19:22:38

MS SQL Server 定时任务实现自动备份的相关文章

设定MS SQL Server 2008定期自动备份

1.说明 SQL Server2008 本身具有定期自动备份功能,我们只需要通过简单的配置就可以实现非常简单高效的自动备份功能. 2.打开SQL Server代理服务 要实现自动备份功能,首先要保证SQL Server的"SQL Server(代理)"服务已经打开. 如果没有看到这个"SQL Server代理"节点,可通过如下方式打开 先找到开始菜单中的"Microsoft SQL Server 2008 R2",再在"配置工具&quo

SQL Server 数据库定时自动备份

原文:SQL Server 数据库定时自动备份 SQL Server 数据库定时自动备份——每天定时备份,保留前8天的备份 利用SQL Server代理新建作业来定期备份 1)在数据库库的[SQL Server代理]->[作业],右键[新建作业] 2)在[常规]选项卡设置[名称](自定义) 3)在[步骤]选项卡中点击[新建],然后在弹出的窗口的[常规]选项卡中设置“步骤名称”(自定义):选择“类型”为“Transact-SQL 脚本(T-SQL)”(默认):选择“数据库”为你要备份的数据库:添加

SQL Server 数据库定时自动备份(转载)

SQL Server 数据库定时自动备份 本文来源于转载:http://www.cnblogs.com/zhangq723/archive/2012/03/13/2394102.html 前提:在使用下面的备份方式之前需要确保你的Sqlserver Agent服务启动,切设置为自动启动.否则当你服务器重启了但是Agent服务没有启动,那么自动备份任务就不会执行 (一)使用TSql代码自动备份 在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本

SQL Server 数据库定时自动备份【转】

在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行,所以我们不可能要求管理员每天守到晚上1点去备份数据库.要实现数据库的定时自动备份,最常用的方式就是使用SQL Server代理中的作业.启动SQL Server Agent服务,然后在其中新建作业,作业中添加1个备份步骤,类型是T-SQL脚本,然后在命令中输入如下SQL语句,该语句实现了对数据库TestDB1的完整备份,备份文件在C盘Backup文件夹中,文件名就是T

SQL SERVER 2008 R2 自动备份并删除过期备份数据

    我们的系统维护的过程中肯定需要对数据库进行定期的备份,但是如果定时手工备份的话,不但浪费时间,也不能保证每次都可以按时备份,所以自动备份成为了我们的不二选择,但是定时备份需要定期清理备份文件,不然会因为磁盘空间不足导致备份失败,失去备份的准确性,下面我们就一步步来看一下如果自动备份并删除过期备份数据. 1.打开SQL SERVER 2008 R2,连上数据库,右键选择[管理]-[维护计划]-[维护计划向导]. 2. 在名称中为维护计划取一个通俗易懂的名字,例如"EveryDayBak&q

SQL Server 2008怎么自动备份数据库

在SQL Server 2008数据库中.为了防止数据的丢失我们就需要按时的来备份数据库了.要是每天都要备份的话,人工备份会很麻烦的,自动备份的话就不需要那么麻烦了,只 要设置好了,数据库就会自动在你设置的时间段里备份.那么自动备份要怎么设置呢.下面为大家讲解. 工具/原料 电脑一台 要安装SQL Server 2008数据库. 方法/步骤 1 在电脑开始菜单中选择“SQL Server Management Studio”双击.在出现的界面中点击“连接”按钮. 2 在出现的“ Microsof

SQL Server 数据库定时自动备份(转)

本文转载自:http://www.cnblogs.com/zhangq723/archive/2012/03/13/2394102.html 作者:清风寻梦 在SQL Server中出于数据安全的考虑,所以需要定期的备份数据库.而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行, 所以我们不可能要求管理员 每天守到晚上1点去备份数据库.要实现数据库的定时自动备份,最常用的方式就是使用SQL Server代理中的作业. 启动SQL Server Agent服务,然后在其中新建作业,作业中添

SQL Server 2008R2创建自动备份计划

本文主要利用SQL Server 2008 R2自带的"维护计划"创建一个自动备份数据的任务. 首先,如果SQL Server代理处于以下状态,右击启动就可以了(如果启动请跳过此步骤). 第二步,依次展开"管理"---"维护计划",并右击"维护计划"选择"新建维护计划",这里需要填写备份数据库的名字. 点击"确定"后,将会打开如下界面,红框中的两个地方是我们需要注意的地方. 第三步,点击

SQL SERVER 2012设置自动备份数据库

为了防止数据丢失,这里给大家介绍SQL SERVER2012数据自动备份的方法: 一.打开SQL SERVER 2012,如图所示: 服务器类型:数据库引擎: 服务器名称:127.0.0.1(本地),也可以选择远程连接; 身份验证:包含Windows身份验证和 SQL Server身份验证,此处选择Windows 身份验证; 二.如图,选择[管理]-->[维护计划]-->[维护计划向导]: 三.在[SQL SERVER 维护计划向导]界面,点击[下一步]: 四.填写如图所示:名称和说明,点击[