Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Pvase Member Откуда: Сообщений: 995 |
Здравствуйте. Задача, почистить логи выполнения пакетов SSISDB. Нашел вот такой скрипт (чистим все что старше 30 дней):USE SSISDB; SET NOCOUNT ON; IF object_id('tempdb..#DELETE_CANDIDATES') IS NOT NULL BEGIN DROP TABLE #DELETE_CANDIDATES; END; CREATE TABLE #DELETE_CANDIDATES ( operation_id bigint NOT NULL PRIMARY KEY ); DECLARE @DaysRetention int = 30; INSERT INTO #DELETE_CANDIDATES ( operation_id ) SELECT IO.operation_id FROM internal.operations AS IO WHERE IO.start_time < DATEADD(day, -@DaysRetention, CURRENT_TIMESTAMP); DELETE T FROM internal.event_message_context AS T INNER JOIN #DELETE_CANDIDATES AS DC ON DC.operation_id = T.operation_id; DELETE T FROM internal.event_messages AS T INNER JOIN #DELETE_CANDIDATES AS DC ON DC.operation_id = T.operation_id; DELETE T FROM internal.operation_messages AS T INNER JOIN #DELETE_CANDIDATES AS DC ON DC.operation_id = T.operation_id; DELETE T FROM internal.operations AS T INNER JOIN #DELETE_CANDIDATES AS DC ON DC.operation_id = T.operation_id; но здесь не все таблицы для очистки, например таблицы:
Как почистить еще и эти таблицы? Дело в том, что в этих таблицах нет поля operation_id, но зато есть [execution_id]. Подскажите, как можно получить список выполнений пакетов с условием по датам, чтобы почистить и эти три таблицы с условием по полю [execution_id]? Понимаю что надо смотреть в таблицу [internal].[executions], но в ней нет данных по дате запуска пакетов. Заранее спасибо. |
||
14 ноя 16, 13:21 [19890920] Ответить | Цитировать Сообщить модератору |
Pavel1211 Member Откуда: Екатеринбург Сообщений: 205 |
Насколько я помню, есть процедуры в БД SSISDB, а поверх них джоб, который удаляет устаревшие данные и логи из SSISDB. SSIS Maintanance Job вроде называется. Гляньте как он удаляет. Только там надо аккуратнее удалять, потому что настроено каскадное удаление по FK. |
||
14 ноя 16, 13:34 [19891004] Ответить | Цитировать Сообщить модератору |
Pavel1211 Member Откуда: Екатеринбург Сообщений: 205 |
Pvase, во, нашел ссылку полезную: http://stackoverflow.com/questions/21781351/how-can-i-clean-up-the-ssisdb |
14 ноя 16, 13:35 [19891015] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8316 |
Pvase, что Вы сочиняете? Открываете каталоги служб Integration Services, выбираете SSISDB, ПКМ клик, свойства, настраиваете. |
14 ноя 16, 14:04 [19891216] Ответить | Цитировать Сообщить модератору |
Pavel1211 Member Откуда: Екатеринбург Сообщений: 205 |
Владислав Колосов, Да, верно. Но я работал с сервером, где долгое время не чистились логи ( по-умолчанию они вроде год хранятся ), а потом разработчики увидели что логи занимают кучу места и попросили удалить. По указанной вами настройке SSIS Maintanance Job начал удалять данные из логовых таблиц... и залочил выполнение всех пакетов. Он их хранил условные 300 дней, а теперь ему говорят, что надо оставить данные только за 7 дней. Не помню ньюансов, но пришлось проделывать те же действия, что и SSIS-овские процедуры из джоба делают, но ручками и в коротких транзакциях типа delete top 100... Это я так, ТС-у говорю. Вдруг с такой же проблемой столкнется :) |
14 ноя 16, 14:24 [19891374] Ответить | Цитировать Сообщить модератору |
Pvase Member Откуда: Сообщений: 995 |
Та же беда, база 25 гиг, Лог при удалении 40, а места на диске нету. Удаляю частями. |
||
14 ноя 16, 15:19 [19891688] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8316 |
Pvase, дык по месяцу убавляйте срок хранения или по неделе. |
14 ноя 16, 15:45 [19891898] Ответить | Цитировать Сообщить модератору |
a_voronin Member Откуда: Москва Сообщений: 4807 |
Установите размер порции INSERT INTO #DELETE_CANDIDATES ( operation_id ) SELECT TOP 9999 IO.operation_id FROM internal.operations AS IO WHERE IO.start_time < DATEADD(day, -@DaysRetention, CURRENT_TIMESTAMP); |
14 ноя 16, 16:02 [19892000] Ответить | Цитировать Сообщить модератору |
Pvase Member Откуда: Сообщений: 995 |
Спасибо, то что надо. |
||
16 ноя 16, 12:29 [19899529] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |