SQL2005 EXPRESS自动备份
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SQL 2005 EXPRESS 自动备份
2010-05-13 11:03:49
标签:SQL自动EXPRESS
最近由于换了新的工作,公司用了SQL 2005 EXPRESS ,可是没法实现数据的维护计划,对于不断增多急需做自动备份的工作十分头痛,在网上不断的找资料,都解释的不是很全,接下来,我整理给大家看下,因为我刚才已经TEST成功了,希望对大家有帮助,我可量百度SEACH了一天时间才弄出来
方法如下
1 首先用SQL Server Management Studio Express 登录到实例中
展开数据库,新建存储过程
复制如下语句到到右边
USE master
GO
CREATE PROC p
@db_name sysname, --数据库名
@bk_path NVARCHAR(1024) --备份文件的路径
AS
IF ISNULL(@db_name,'')=''
SET @db_name=db_name() ;
DECLARE @dt VARCHAR(50) ;
SET @dt=@db_name+'_'+CONVERT(VARCHAR(8) , GETDATE() ,112)+'_';
SET @dt=@dt+REPLACE(CONVERT(VARCHAR(10) ,GETDATE() ,108),':','') IF RIGHT(@bk_path,1)<>'\'
SET @bk_path=@bk_path+'\';
EXEC ('BACKUP DATABASE ['+@db_name+'] TO DISK='''+@bk_path+@dt+'.bak'' WITH FORMAT');
GO
根据实际数据库做修改
第二步
在某个文件夹里建两个txt文件--如D:\batComand.txt跟D:\BackupDatabase.txt
--然后batCommand.txt文件内容如下:
sqlcmd -S TAIXIN-PC-11\SQLEXPRESS -E -i D:\BackupDatabase.sql
上面这条语句TAIXIN-PC-11\SQLEXPRESS是计算机名\实例名
然后保存.将扩展名改为.bat
然后BackupDatabase.txt文件内容如下:
USE master
GO
EXEC p '要备份的数据库名','备份路径'
然后保存,将扩展名改为.sql
--第三步
新建任务计划.然后在选择执行哪个任务的时候..单击浏览..选择D:\batCommand.bat
设置每天执行..即可.
备份时的文件名是:数据库名_日期_时间.bak
最新经验补充,经过一段时间的备份,会发现日志文件不断增加,原因是除了日志备份,在完整备份模式下,其他备份不会截断日志。
采用的方法:
一、将数据库备份模式更改为简单备份模式,此模式下将不保留日志。(简单但不灵活)
二、进行完全备之后再进行日志备份。
到这里时,大家发现有登录超过时的错误,其实还要设置一个地方,那就是SQL TCP/IP协议
1、开启网络协议
SQL Server Configuration Manager -> 网络配置-> 协议
TCP/IP属性
保持活动状态--> 30000
全部侦听--> 否
无延迟--> 否
已启用--> 是
IP地址
IP地址--> 数据库服务器IP
TCP动态端口--> 不填
TCP端口--> 1433
活动--> 是
已启用--> 是
注意,所做的修改都是得重启SQL服务才会生效,到这里应该差不多了!