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

Откуда:
Сообщений: 226
Всем известно в каком формате сохраняются бэкапы, если задания делать через Database Maintanance Plane (что-то типа BUH_db_200410060403.BAK).
Хочется написать DTS пакет, который бы восстанавливал последний сделанный бэкап. Вроде все просто, но нужно определить имя файла в указанной директории, который является последним бэкапом данной базы.

Есть у кого-нибудь какие-нибудь наработки или варианты другие?
7 окт 04, 09:41    [1014827]     Ответить | Цитировать Сообщить модератору
 Re: скрипт для восстановления последнего бэкапа  [new]
Glory
Member

Откуда:
Сообщений: 104760
select c.database_name, c.type, a.physical_device_name, c.backup_start_date, c.backup_finish_date
from msdb..backupmediafamily a
inner join msdb..backupmediaset b on b.media_set_id = a.media_set_id
inner join msdb..backupset c on c.media_set_id = a.media_set_id
where c.backup_set_id = (select top 1 d.backup_set_id from msdb..backupset d where d.database_name=c.database_name order by d.backup_start_date desc)
--and c.database_name = 'northwind'
order by c.database_name, c.backup_start_date, c.backup_finish_date

create table #x(f1 varchar(8000))
insert #x exec master..xp_cmdshell 'dir c:\dir\*.bak'
select * from #x
drop table #x
7 окт 04, 10:18    [1015005]     Ответить | Цитировать Сообщить модератору
 Re: скрипт для восстановления последнего бэкапа  [new]
Dennizz
Member

Откуда:
Сообщений: 226
Спасибо... примерно то, что надо.
Остальное доработаем.

ps: а я уж было собрался лепить на vbs ;)
7 окт 04, 11:11    [1015224]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить