Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Зенит победит!
Guest |
В Oracle есть каталог и RMAN. МОжно задать retention window, скажем 14 дней. И есть команда, которая грамотно удаляет устаревшие бэкапы. Пример: F1 L1 L2 L3 D1 L4 L5 D2 L6 L7 L8 L9 F2 ... Так вот, если D1 был сделан 15 дней назад, а F1 двадцать дней назад, то при retention window в 14 дней. RMAN не удалит F1, а только D1. Чтобы было в случае восстановления к чему применять D2 (к F1). Т. е. он не тупо косит бэкапы по дате, а рассматривает еще и что, собственно, бэкапилось. Так как одно может зависеть от другого. Не нашел такого функционала в SQL Server'е. Как выкручиваетесь? Нашел OLga Halengren Scripts, там что-то реализовано с удалением, но не уверен, что она не делает как все (утпо по дате). Заранее спасибо. |
17 апр 15, 11:02 [17528077] Ответить | Цитировать Сообщить модератору |
WarAnt Member Откуда: Питер Сообщений: 2423 |
Зенит победит!, А просто удалять раз в неделю все что старше двух недель, не? offtop это мне напомнило изобретение американцами ручки для космоса, тогда как наши просто писали там карандашами:) |
17 апр 15, 12:13 [17528474] Ответить | Цитировать Сообщить модератору |
Зенит победит!
Guest |
не катит такая схема вы похерите такой схемой full'ы, а diff'ы и логи останутся висеть.. вы не внимательно читали пост. цимес в том что надо иметь возможность восстановления в окне - две последние недели. |
||
17 апр 15, 13:00 [17528820] Ответить | Цитировать Сообщить модератору |
komrad Member Откуда: Сообщений: 5496 |
не вижу большой проблемы в том, чтобы в процедуре/скрипте : 1) начитать список файлов из директории 2) для каждого файла выполнить restore headeronly и сохранить во времянку 3) проанализировать данные на основе даты создания бекапа и LSN-ы 4) собрать список файлов на удаление 5) удалить их наверняка у кого-то такое решение уже есть |
||||
17 апр 15, 13:12 [17528902] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31779 |
Если бизнесу это критично, если они посчитали баланс бабла, и он положительный, то можно написать скрипт, как пишет komrad Наверняка такие уже есть, я вроде даже в форуме видел, можно поискать... "Стандартное" решения из планов обслуживания удалает тупо по дате, это да. |
||
17 апр 15, 13:29 [17529056] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
Откуда может взяться файл бэкапа, дата создания которого раньше даты содержащегося в нем бэкапа ? |
||
17 апр 15, 13:31 [17529079] Ответить | Цитировать Сообщить модератору |
Зенит победит!
Guest |
Всем спасибо. О педалях я то знаю/понимаю как сделать. Просто после oracle это дикость, что это надо писать руками.
чего? |
||||
17 апр 15, 13:34 [17529109] Ответить | Цитировать Сообщить модератору |
stavgreengo Member Откуда: Сообщений: 710 |
велосипеды изобретать весьма занятное дело, но по мне лучше иметь три каталога Full, Diff, LOG и соответственно настроить туда бэкапирование и чистику с нужной периодичностью для каждого. |
17 апр 15, 13:41 [17529188] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
Вы увереяете, что при простом удалении файлов по дате создания полный бэкап вдруг удалиться, а другие не удаляться. |
||||
17 апр 15, 13:41 [17529189] Ответить | Цитировать Сообщить модератору |
gang Member Откуда: Сообщений: 1394 |
Зенит победит!, В планах обслуживания есть Maintenance Cleanup Task который чистит файлы бекапов в указанной директории по дате создания с учетом расширений. Ну и скриптами самописными, как уже говорили, можно всяких свистелок накрутить. Например проверку архивных атрибутов перед удалением. |
17 апр 15, 14:09 [17529385] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31779 |
|
||
17 апр 15, 15:04 [17529749] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104760 |
Ну так наверное надо брать две недели не от текущей даты. А от начала недели, например |
||||
17 апр 15, 15:07 [17529766] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8316 |
Дык если дифференциальные складывать в тот же файл, что и полный, то проблем быть не должно. |
17 апр 15, 15:38 [17529993] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31779 |
В общем, я выше уже написал:
В общем и так можно сделать, просто разделить удаление на 3 части, по типам файлов, и для каждой части назначить правильное время. Конечно, было бы удобно, что бы план обслуживания сам читал заголовки и правильно удалял, сказал ему - "оставлять за 2 недели", и он сам подбирает нужные файлы :-) |
||||
17 апр 15, 15:39 [17529996] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31779 |
А цель то как раз "не хранить лишнее". Если хранить лишнее, то можно просто поставить удаление с запасом, не обязательно держать бакапы в одном файле, логически результат будет тот же. |
||
17 апр 15, 15:41 [17530006] Ответить | Цитировать Сообщить модератору |
Гавриленко Сергей Алексеевич Member Откуда: Moscow Сообщений: 37143 |
Сделали просто: полный бэкап и все последующие с ним связанные, будь то диф или лог, складываются в одну папку. Далее устаревшие бэкапы удаляем папками. |
17 апр 15, 15:42 [17530016] Ответить | Цитировать Сообщить модератору |
alexeyvg Member Откуда: Moscow Сообщений: 31779 |
А ТС упорно хочет их удалять! |
||
17 апр 15, 16:31 [17530408] Ответить | Цитировать Сообщить модератору |
WarAnt Member Откуда: Питер Сообщений: 2423 |
Как я понял, у ТС полный бекап делается не с постоянной периодичностью, а как попало, может сделаться сегодня, а может через месяц, вот поэтому и приходится изобретать костыль, который бы бегал и искал последний полный бекап от указанного интервала (типа 2 недели) и удалять только то что старше этого полного бекапа. |
||||
17 апр 15, 16:46 [17530528] Ответить | Цитировать Сообщить модератору |
kihor Member Откуда: Сообщений: 57 |
Зенит победит!, У нас на работе SQL бекапируется при помощи Microsoft DPM. Я не админ, но знаю, что DPM имеет свой retention window. |
18 апр 15, 02:59 [17532469] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |