Очистка регистра версий объектов

1. platonov.e 158 21.07.19 14:01 Сейчас в теме
Добрый день.
база на ms sql.
Решил почистить базу, начал с регистра версионирования. Таблица весила около 20гб. Файл базы весил около 100гб, файл лога около 3мб.
Очистил данные по 2019 год. Запустил тестирование и исправление с режимами "Реиндексация таблиц ИБ" и "Реструктуризаия таблицы ИБ", в ходе выполнения тестирования, на диске закончилось место, тестирование выпало в ошибку. Файл базы стал весит 150гб, файл лога стал весить 343гб.
Почистили место на жестком диске, заново запустили тестирование и исправление. Оно завершилось успешно, но файлы базы и лога нисколько не уменьшились)
Подскажите что я не правильно делаю и как сделать правильно, по сколько я ожидал что база станет весить гигабайт на 20 меньше)))
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Dream_kz 129 21.07.19 14:07 Сейчас в теме
(1) Из 1С объем файлов не уменьшить. Можно сделать шринк через ssms, тогда размер уменьшится, но толку от этого не много, пространство в файле будет переиспользовано
3. platonov.e 158 21.07.19 14:10 Сейчас в теме
(2) т.е. это тестирование и исправление было вообще не нужным? я то думал оно и уменьшит размер базы.
4. Dream_kz 129 21.07.19 14:13 Сейчас в теме
5. platonov.e 158 21.07.19 16:57 Сейчас в теме
(4) Сделал сжатие в ms sql, файл базы стал весит 75гб, файл лога 430гб)))
Или нужно потом делать сжатие лога?)
6. Dream_kz 129 21.07.19 17:21 Сейчас в теме +1 $m
(5) А модель восстановления какая?
Если полная, сам должен ужаться, после копии лога, если простая, то можно сделать сжатие лога
Fox-trot; +1 Ответить
7. platonov.e 158 21.07.19 17:39 Сейчас в теме
(6) Я вообщем сперва выбрал Задача - Сжатие - Файлов. Тип файла - данные, файловая группа primary. Он быстро отработал. Потом сделал Сжатие базы данных, там никаких настроек не было просто нажал далее, после этого файл лога вырос, а базы уменьшился. Я может что то не то вообще делаю?)
8. Dream_kz 129 21.07.19 18:38 Сейчас в теме
(7) Тоже самое для лога повтори
10. platonov.e 158 21.07.19 19:46 Сейчас в теме
11. Dream_kz 129 21.07.19 21:51 Сейчас в теме
(10)
А модель восстановления какая?
Если полная, сам должен ужаться, после копии лога, если простая, то можно сделать сжатие лога
18. platonov.e 158 23.07.19 20:15 Сейчас в теме
13. psviridov 23.07.19 07:29 Сейчас в теме
(10) а размер файла лога после сжатия указывали? Я раз в месяц руками логои режу до 200Мб
19. platonov.e 158 23.07.19 20:16 Сейчас в теме
(13) не, ничего не указывал. для меня этот sql темный лес
9. tusv 211 21.07.19 19:38 Сейчас в теме +1 $m
(5)Установите Вариант восстановления,базы в Simple (Простое) и Log файл можно удалить
и после шринка БД нужно переиндексировать. Статья про шринки
Запрос в SQL
sp_msforeachtable N'DBCC DBREINDEX ("?")'
17. platonov.e 158 23.07.19 20:15 Сейчас в теме
12. progr-2008 118 22.07.19 18:14 Сейчас в теме
15. platonov.e 158 23.07.19 20:09 Сейчас в теме
(12) а он даст такую базу выгрузить в dt?
14. _Lilka 23.07.19 08:48 Сейчас в теме +1 $m
при сжатии показывает сколько доступного места, т.е. на сколько может сжать лог файл. Покажите ваш скриншот сжатия. И еще, если не ошибаюсь, то лог файл в принципе можно удалить, например есть только файл .mdf, присоединяем базу указываем путь и все, новый лог файл пустой
16. platonov.e 158 23.07.19 20:11 Сейчас в теме
(14) окна уже все давно закрыл) там вот есть два варианта сжатия - файлов и БД, когда выбирал файлов и по очереди файл базы и потом лога, то ничего не произошло, когда БД выбрал, то бд сжалось, а лог вырос )
ссыкатно как то удалять лог)
20. _Lilka 23.07.19 22:59 Сейчас в теме
(16) в чем проблема открыть? Вы разобраться хотите или нет?
22. platonov.e 158 27.07.19 23:59 Сейчас в теме
(20) это?
Прикрепленные файлы:
24. _Lilka 29.07.19 00:33 Сейчас в теме
(22) это сжатие базы, а надо выбрать сжатие файл- тип файла выбрать Журнал и сделайте скриншот
25. platonov.e 158 29.07.19 16:01 Сейчас в теме
(24) это я уже перезалил базу, и только очистил регистр, без всяких сжатий.
Прикрепленные файлы:
26. _Lilka 29.07.19 16:25 Сейчас в теме
(25) и после сжатия размер лог файла совсем не меняется?
27. platonov.e 158 29.07.19 16:38 Сейчас в теме
(26) нет, но я наверняка что то не так делал, вот поэтому заново пытаюсь)
По советам здесь, я понял что, нужно: Сделать модель восстановления - Простая, Сделать сжатие файла базы, сделать сжатие файла лога, вернуть модель восстановления полная. Правильно ли я все понял?
28. _Lilka 29.07.19 18:11 Сейчас в теме
(27) Лог файл сам не "сожмется", нажмите кнопку :) Боитесь, делайте на копии или делайте копию базы. Я вам скажу, что когда "летит" всё и надо восстановить базу, а у тебя только .mdf файл, то оказывается, что достаточно его одного подключить к SQL и все снова работает и нет потери данных. Так что экспериментируйте, делайте выводы и всегда имейте копию базы
30. platonov.e 158 29.07.19 20:19 Сейчас в теме
(28) а почему когда в операции я выбираю освободить неиспользуемое место то ничего не происходит?
33. _Lilka 30.07.19 00:20 Сейчас в теме
(30) давай уточним, действие сжатие происходит по кнопке ОК. После нажатия ОК окно закрывается, открываем снова и смотрим на результат. Так делаешь и ничего не поменялось?
35. platonov.e 158 30.07.19 07:08 Сейчас в теме
(33) не совсем - смотрю на файл базы и его размер не меняется, поменялся только когда вид операции поставил реорганизовать таблицы, и указал размер
36. _Lilka 30.07.19 13:00 Сейчас в теме
(35) а файл лога? Лучше если будешь писать что нажимаешь и последовательно, а не "смотрю на файл базы". Что на него смотреть? А вот выбрал такую-то операцию и нажал ОК, тогда понятно что делаешь
21. dimon_tb 24.07.19 12:33 Сейчас в теме +1 $m
в Параметрах базы данных укажи "Модель восстановления" - Простая. После сделай сжатия файла журнала. Лог ужмется до минимума, после можешь вернуть метод восстановления и установить ограничения на размер файла журнала.
Fox-trot; +1 Ответить
23. platonov.e 158 28.07.19 00:02 Сейчас в теме
(21) вот там можно сжать БД и файл, что нужно выбрать?) сперва пробовал файлы выбирать, ничего не поменялось. Потом выбрал БД, файл БД сжался, а лог увеличился до 340гб)
Но там Модель восстановления была полная вроде.
29. пользователь 29.07.19 20:18
Сообщение было скрыто модератором.
...
31. dimon_tb 29.07.19 22:47 Сейчас в теме
(23) файл, и выбрать именно журнал.
32. dimon_tb 29.07.19 22:50 Сейчас в теме
(23)
Прикрепленные файлы:
34. platonov.e 158 30.07.19 07:07 Сейчас в теме
(32) а когда мне файл базы то нужно сжать? я удалил таблицу версионирования. она ~ 20гб весила, вот мне нужно теперь таблицу сжать)
PS Выбрал реорганизовать таблицы, и указал размер, он сжал до этого размера. Но я думал при виде операции "освободить неиспользуемое место" тоже база должна сжиматься.
37. tristarr1 58 31.07.19 11:21 Сейчас в теме
(34) При росте базы растет размер файла, когда данный из базы удаляются, размер файла не уменьшается, чтобы освободить из "резерва" место на диске есть процедура Shrink. В вашем случае должно помочь переключение режима с восстановления с FULL на Simple. параллельно с этим можно выгрузить базу в DT. Естественно подо все эти манипуляции желательно иметь свободное место на диске.
38. yurazyuraz 12.10.23 17:52 Сейчас в теме
На уровне SQL чистить нужно две таблицы
мгновенная чистка системы - в нашем случае 0.5 секунд вместо полутора часов



truncate table _InfoRgChngR14137; --- РегистрСведений.ВерсииОбъектов.Изменения
truncate table _InfoRg14118; --- РегистрСведений.ВерсииОбъектов

_InfoRgChngR14137 - имена таблиц будут другие - их нужно выяснить
_InfoRg14118 -
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот