2024年3月14日发(作者:)

Sqlserver2005/2008数据库中没有维护计划,使用

windows默认的计划任务实现数据备份

目录

制作备份脚本: ......................................................................................................................................... 1

一、任意目录新建文件夹sqlbat ..................................................................................................... 1

二、把下面语句保存为 ,保存到 sqlbat 文件夹中 ....................... 2

三、把下面语句保存为 , 保存到 sqlbat 文件夹中 ......................... 2

任务计划: .................................................................................................................................................. 2

一、任务计划程序 ................................................................................................................................ 2

二、创建任务,进行备份。 ............................................................................................................. 3

手动执行测试: ......................................................................................................................................... 6

一、尝试手动执行 文件 ................................................................................. 6

二、手动执行 文件,错误结果解决方法: ............................................ 6

三、手动执行任务计划 ....................................................................................................................... 7

四、手动执行任务计划错误结果解决方法: ............................................................................. 7

有些朋友用到的数据库是sqlserver 2005/2008 express ,但express这个版本的功能有

些限制,无法使用维护计划。

想要实现express版本的自动备份可以使用系统自带的任务计划来实现。

制作备份脚本:

一、任意目录新建文件夹sqlbat

如:C盘根目录

1 / 8

二、把下面语句保存为 ,保存到 sqlbat

文件夹中

1. 修改数据库备份目的方件夹和数据库名称(红色标的地方)。

2. SELECT @OLDDATE=GETDATE()-2 此语句为删除2天前的备份,删除多少天前的备

份就把“2”修改一下就可以了。

DECLARE @sqlCommand NVARCHAR(1000)

DECLARE @dateTime NVARCHAR(20)

SELECT @dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),111),'/','') +

REPLACE(CONVERT(VARCHAR, GETDATE(),108),':','')

SET @sqlCommand = 'BACKUP DATABASE ' + '数据库名称' +

' TO DISK = ''D:Backupsql' + '数据名称' + '_Full_' + @dateTime +

'.BAK'''

DECLARE @OLDDATE DATETIME

SELECT @OLDDATE=GETDATE()-2

EXECUTE sp_executesql @sqlCommand

EXECUTE _delete_'D:Backupsql',N'bak',@olddate

三、把下面语句保存为 , 保存到 sqlbat

文件夹中

1. cd C:Program FilesMicrosoft SQL Server90Toolsbinn 此语句为进入到目录因为需要

用到这个目录的 文件来进行备份操作

cd C:Program FilesMicrosoft SQL Server90Toolsbinn

-S 127.0.0.1 -E -i C:

任务计划:

一、任务计划程序

2 / 8