TwoThrones
02-07-2010, 11:11
Добрый день.
Есть сервер с ОС Windows Server 2003 R2 с установленным SQL Server 2005
SQL Server Configuration Manager v.2005.090.1399.00
SQL Server Management Studio Express v.9.00.2047.00
Есть база "no name" её необходимо ежедневно бекапить.
Первоначально я бекапил с помощью 7zip и bat-файла
Но сотрудники нашей компании иногда задерживаются допоздна и архив получался пустым.
Хочу сделать бакам через sql.
Скрипт бекапа
BACKUP DATABASE [no name] TO DISK = N'C:\Backup\no name.bak' WITH NOFORMAT, NOINIT, NAME = N'no name-Полная База данных Резервное копирование', SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO
declare @backupSetId as int
select @backupSetId = position from msdb..backupset where database_name=N'no name' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N'no name' )
if @backupSetId is null begin raiserror(N'Ошибка верификации. Сведения о резервном копировании для базы данных "no name" не найдены.', 16, 1) end
RESTORE VERIFYONLY FROM DISK = N'C:\Backup\no name.bak' WITH FILE = @backupSetId, NOUNLOAD, NOREWIND
GO
1. Как сделать чтоб скрипт выполнялся ежедневно?
2. Архив должен создаваться каждый день с датой в имени?
no_name(01.07.10).bak
no_name(02.07.10).bak
no_name(03.07.10).bak
3. И какие ещё способы есть?
Есть сервер с ОС Windows Server 2003 R2 с установленным SQL Server 2005
SQL Server Configuration Manager v.2005.090.1399.00
SQL Server Management Studio Express v.9.00.2047.00
Есть база "no name" её необходимо ежедневно бекапить.
Первоначально я бекапил с помощью 7zip и bat-файла
Но сотрудники нашей компании иногда задерживаются допоздна и архив получался пустым.
Хочу сделать бакам через sql.
Скрипт бекапа
BACKUP DATABASE [no name] TO DISK = N'C:\Backup\no name.bak' WITH NOFORMAT, NOINIT, NAME = N'no name-Полная База данных Резервное копирование', SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO
declare @backupSetId as int
select @backupSetId = position from msdb..backupset where database_name=N'no name' and backup_set_id=(select max(backup_set_id) from msdb..backupset where database_name=N'no name' )
if @backupSetId is null begin raiserror(N'Ошибка верификации. Сведения о резервном копировании для базы данных "no name" не найдены.', 16, 1) end
RESTORE VERIFYONLY FROM DISK = N'C:\Backup\no name.bak' WITH FILE = @backupSetId, NOUNLOAD, NOREWIND
GO
1. Как сделать чтоб скрипт выполнялся ежедневно?
2. Архив должен создаваться каждый день с датой в имени?
no_name(01.07.10).bak
no_name(02.07.10).bak
no_name(03.07.10).bak
3. И какие ещё способы есть?