Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Поделитесь готовым сценарием restore  [new]
Дядя Жора
Member

Откуда: Одесса
Сообщений: 828
MsSQL 2008 + Win 2003

Необходимо разработать стратегию резервирования базы и в то же время не хочется изобретать велосипед.

Вот приблизительный сенарий бэкапирования. Параметры буду ещё наращивать, и разбивать по разным сценариям. Это так сказать костяк.

DECLARE @str_full NVARCHAR(255)
DECLARE @str_full1 NVARCHAR(255)
DECLARE @str_diff NVARCHAR(255)
DECLARE @str_diff1 NVARCHAR(255)
DECLARE @str_trn NVARCHAR(255)
DECLARE @str_trn1 NVARCHAR(255)
DECLARE @date VARCHAR(8)
DECLARE @time VARCHAR(8)

SET @date = REPLACE(CONVERT(VARCHAR(10), GETDATE(), 120), '-','')
SET @time = REPLACE(CONVERT(varchar(8), GETDATE(), 108),':','')

SET @str_full='D:\Backup\Keeper\full\loc\keeper_afull'+@date+'_'+@time+'.bk' 
SET @str_full1='D:\Backup\Keeper\full\net\keeper_afull'+@date+'_'+@time+'.bk' 
SET @str_diff='D:\Backup\Keeper\full\loc\keeper_bdiff'+@date+'_'+@time+'.bk' 
SET @str_diff1='D:\Backup\Keeper\full\net\keeper_bdiff'+@date+'_'+@time+'.bk' 
SET @str_trn='D:\Backup\Keeper\trn\keeper_trn'+@date+'_'+@time+'.trn' 
SET @str_trn1='\\backup-w\tera\MsSQL\Keeper\backup1\trn\keeper_trn'+@date+'_'+@time+'.trn' 
--BACKUP DATABASE keeper TO DISK=@str_full with format
--BACKUP DATABASE keeper TO DISK=@str_full with format, differential  
--BACKUP LOG keeper TO DISK=@str_trn with format

--BACKUP DATABASE keeper TO DISK=@str_full mirror TO DISK=@str_full1 with format 
--BACKUP DATABASE keeper TO DISK=@str_diff mirror TO DISK=@str_diff1 with format, differential 
--BACKUP LOG keeper TO DISK=@str_trn mirror TO DISK=@str_trn1 with format

Т.к. планируется бэкап журналов делать часто (к примеру) раз в полчаса, то возникает вопрос как автоматизировать процесс восстановления. Т.е. если к примеру надо восстановиться с одного полного, 2-х разностных бэкапов, то их ещё можно в скрипте вручную прописать. Но если к указанному времени восстановления набежит к примеру 40 журналов, то писать их в скрипт руками несколько утомительно. Наверняка у уважающих себя админов есть сценарии готовые по этому поводу, которые в зависимости от наличия бэкапов формируют sql-файл к примеру. Проши помощи или хотя бы совета, чтобы самому не изобретать изобретённое.
19 ноя 09, 12:51    [7950174]     Ответить | Цитировать Сообщить модератору
 Re: Поделитесь готовым сценарием restore  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
автор
Наверняка у уважающих себя админов есть сценарии готовые по этому поводу, которые в зависимости от наличия бэкапов формируют sql-файл к примеру.


Гм... Интересный подход, отталкиваться от "наличия бэкапов"...

автор
то возникает вопрос как автоматизировать процесс восстановления.


Самое простое - с помощью мышечных усилий в студии.
19 ноя 09, 13:09    [7950314]     Ответить | Цитировать Сообщить модератору
 Re: Поделитесь готовым сценарием restore  [new]
Дядя Жора
Member

Откуда: Одесса
Сообщений: 828
pkarklin

Гм... Интересный подход, отталкиваться от "наличия бэкапов"...


А что тут странного? У каждого файла своё уникальное имя привязанное к дате и времени. Потому прежде чем восстанавливаться надо бы как-то эти имена откуда-то взять.
19 ноя 09, 13:49    [7950671]     Ответить | Цитировать Сообщить модератору
 Re: Поделитесь готовым сценарием restore  [new]
Дядя Жора
Member

Откуда: Одесса
Сообщений: 828
Как я понимаю всю нужную инфу для этого можно взять из этого запроса

use master
select * from msdb..backupset b_set 
left outer join msdb..backupmediafamily b_mf on b_set.media_set_id=b_mf.media_set_id 
19 ноя 09, 14:00    [7950746]     Ответить | Цитировать Сообщить модератору
 Re: Поделитесь готовым сценарием restore  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Дядя Жора
А что тут странного? У каждого файла своё уникальное имя привязанное к дате и времени. Потому прежде чем восстанавливаться надо бы как-то эти имена откуда-то взять.


Таблицы msdb..backup* Вам в помошь! именно оттуда студия берет данные о бэкапах...
19 ноя 09, 14:09    [7950822]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить