SQLSERVER2008R2 T-SQL备份脚本
使用管理--->维护计划-->添加备份计划-->报错:
消息
已以用户 FSLGZ\rfadmin 的身份执行。 Microsoft (R) SQL Server 执行包实用工具 Version 10.0.1600.22 for 64-bit 版权所有 (C) Microsoft Corp 1984-2005。保留所有权利。 SQL Server 执行包实用工具要求 Integration Services 由 SQL Server 2008 的以下某个版本安装: Standard、Enterprise、Developer 或 Evaluation。若要安装 Integration Services,请运行 SQL Server 安装程序并选择 Integration Services。. 包执行失败。. 该步骤失败。
经查,发现是在安装数据库时未安装SSIS包,导致无法使用维护计划来进行备份。
使用脚本进行备份:
SQLSERVER2008R2
打开SQL SERVER 代理--->作业--->新建作业--->在步骤处编写T-SQL脚本--->设置好计划任务
T-SQL备份脚本:
declare @device varchar(50);
declare @filename varchar(50);
declare @filename2 varchar(50);
declare @datetime varchar(50);
declare @weekname varchar(50);
declare @weeknametmp varchar(4);
declare @weekday int;
declare @database varchar(10);
set @weekname=datename(weekday,getdate());
set @datetime = convert(varchar(20),getdate(),112);
set @weeknametmp=substring(@weekname,3,1);
if (@weeknametmp='一')
set @weekday=1;
else if (@weeknametmp='二')
set @weekday=2;
else if (@weeknametmp='三')
set @weekday=3;
else if (@weeknametmp='四')
set @weekday=4;
else if (@weeknametmp='五')
set @weekday=5;
else if (@weeknametmp='六')
set @weekday=6;
else if (@weeknametmp='日')
set @weekday=0;
set @datetime = convert(varchar(20),getdate()-@weekday,112);
set @device= 'QQTT_backup' + @datetime; --备份设备名,随便命名吧
set @filename='D:\BACKUP\QQTT_backup'+@datetime+ '_all.bak' --备份文件保存路径及文件名
set @filename2='E:\BACKUP\QQTT_backup'+@datetime+ '_all.bak'
set @filename3='D:\BACKUP\QQTT_backup'+@datetime+ '_incr.bak'
set @filename4='E:\BACKUP\QQTT_backup'+@datetime+ '_incr.bak'
set @database='QQTT'
if (@weekname='星期日')
begin
execute sp_addumpdevice 'disk',@device,@filename; --添加备份设备
backup database @database to disk=@filename mirror to disk=@filename2 with format,init,checksum; --加上with checksum为校验备份文件的参数
--mirror to disk=XXX 表示镜像备份,相当于在不同路径做了2份一样的备份
exec sp_dropdevice @device; --删除备份设备
end
else
begin
execute sp_addumpdevice 'disk',@device,@filename2;
backup database @database to disk=@filename3 mirror to disk=@filename4 with differential,format,init,checksum; --加上with differential为差异备份的参数
exec sp_dropdevice @device;
end
另外还可以添加其他参数:
WITH CHECKSUM --校验备份文件
WITH FORMAT --覆盖任何现有的备份和创建一个新的媒体集,可以避免一些由于备份设置产生的错误.
WITH INIT --覆盖同名的备份文件
WITH COMPRESSION --压缩备份
WITH DIFFERENTIAL --差异备份
WITH BUFFERCOUNT = 10 --指定用于备份操作的 I/O 缓冲区总数
WITH MAXTRANSFERSIZE = 4194304 --指定要在 SQL Server 和备份介质之间使用的最大传输单元(字节)
取值范围: 65536 字节 (64 KB) 的倍数至4194304字节(4M)
查看所有备份设备
select * from sys.backup_devices
删除备份设备
exec sp_dropdevice 'QQTT_backup20151009'
注意:
备份语句还可以备份多个备份集(存放多个目录路径)
例如:
BACKUP DATABASE [databasename]
TO DISK = 'C:\Backup\BakFile1.bak', DISK = 'C:\Backup\BakFile2.bak', WITH FORMAT, INIT, NAME = 'TEST-完整 数据库 备份', SKIP, NOREWIND, NOUNLOAD, STATS = 10
也可以用变量替代
backup database @database to disk=@filename,disk=@filename2,@devicewith checksum;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28371090/viewspace-1813610/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/28371090/viewspace-1813610/
SQLSERVER2008R2 T-SQL备份脚本相关推荐
- SQL备份神奇伴侣-SQL备份专家2018
SQL自动备份专家2018,支持SQLServer全系统数据库,从SQL2000 到SQL2012再到SQL2016, 程序集成了SQL 备份繁琐的设置步骤,简单几步,即可完成数据库的备份配置. ...
- sql server 数据库模型 备份 恢复 总结 备份脚本
事务日志是可以基于时间点恢复的,必须在full或bulk_logged模式下 Alter database [DBName] set recover bulk_logged , then the fo ...
- mysql用sql语句怎么做个脚本备份_mysql备份脚本
一.介绍两种日志 1.redo log是InnoDB存储引擎层的日志,又称重做日志文件,用于记录事务操作的变化,记录的是数据修改之后的值,不管事务是否提交都会记录下来.在实例和介质失败(media f ...
- php mysql备份脚本_MySQL备份脚本,mysql脚本
MySQL备份脚本,mysql脚本 mysqlbackup.php: php//备份mysql set_time_limit(0); date_default_timezone_set('PRC'); ...
- mysql+dump+选项_mysqldump 备份常用选项以及备份脚本
1.备份命令: # mysqldump -u'root' -p'12345' -h 127.0.0.1 \ -q --single-transaction -R -E \ --triggers -- ...
- oracle自动化,Oracle 自动化备份脚本
备份脚本,基于linux,windows环境需要适当修改. 主脚本,会调用2,3步骤的rman.sql&status.sql $ more main.sh #set env ######### ...
- mysql备份psd文件没有数据_两套mysql备份脚本
数据备份其重要性无需多言,再细想一步,我们至少需要两种备份:一种逻辑备份(mysqldump生成sql文件):一种物理备份(xtrabackup可很好完成).逻辑备份在出问题时能提供更细粒度的恢复和对 ...
- rman备份脚本shell版
1.数据库全备到硬盘 [oracle@centos7 scripts]$ cat rman_backup.sh source /home/oracle/.bash_profile rman targe ...
- 【原创】rman 全库备份脚本
rman 全库备份脚本 run { allocate channel d1 type disk; allocate channel d2 type disk; backup full database ...
最新文章
- python 实现卷积操作
- 重要的事情说三遍!网站如何改版才能最大限度降低影响率?
- python xlwt单元格合并_Python xlwt写入单元格并合并单元格操作问题,pythonxlwt,我想展示成这样:----...
- 结合Kubernetes解读微服务的12要素
- Centos7 小事件:安装微信
- 中国做图像处理的公司
- PostgreSQL update多张表关联查询更新
- 网络API接口的使用
- 知名互联网公司架构图
- 【思考】阿里云的混合云战略,凭啥扯上Zstack?
- 如何使用 scp 递归复制目录
- 微信公众号助手android,微信团队发布微信公众号订阅号助手App
- Marp之制作PPT神器(程序员的定制版PPT)
- php仿QQ等级太阳显示函数
- ERP-SAP服务器集群架构技术沿革
- 医药采购之采购单明细列表查询
- 如何获取中文文献的英文参考文献信息
- Python字符串统计个数
- C++ 软件设计思想
- android如何暂停倒计时,Android – 如何停止和暂停计时器