gifts2017

Сокращаем объем базы

Опубликовал Денис Кожухов (imozg) в раздел Администрирование - Чистка базы

Если вы используете копию базы для разработки, и у вас их не одна, то, возможно, вам будут полезными эти обработки. Обработки призваны сократить объем БД, за счет удаления ненужной информации для разработчика.

Первое, что будем удалять, это регистр "Версии объектов". Этот регистр серьездно увеличивает объем базы, если включена подсистема версионирования. 

Второе - прикрепленные документы к объектам базы 1С, сканы договоров к справочнику договора, счета к документам и т.д. (справочник ХранилищеДополнительнойИнформации)

Все об этом подробно и как это работатет, смотрите в видеоролике.

 

Скачать файлы

Наименование Файл Версия Размер
Удаление прикрепленных данных 5
.epf 11,40Kb
29.11.15
5
.epf 11,40Kb Скачать
Удалить версии объектов 6
.epf 10,61Kb
29.11.15
6
.epf 10,61Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Константин Куликов (Светлый ум) 29.11.15 14:14
Интересный вопрос затронул - надо развивать, например добавить список типов документов которые не нужны в тестовой базе и интерактивное удаление их же, как в обработке "Универсальный обмен данными в формате XML" - закладка удаление
2. Xer shi (Xershi) 29.11.15 18:39
(1) Светлый ум, да, только я думаю тут все дело в том что эти 2 справочника почти нигде не имеют ссылок на элементы. Только в номенклатуре может быть основное изображение. И вот поэтому удалить этим объекты очень просто!
3. Денис Кожухов (imozg) 29.11.15 19:52
(2) Xershi, спасибо за дельное замечание про основное изображение, в своих обработках я такую проверку не делаю, просто удаляю и все. Учту в будущем.
4. Анянов Михаил (insurgut) 29.11.15 21:17
Удаление средствами SQL происходит или средствами 1С (вроде ПустойНаборЗаписейОчищаемогоРегистра.Записать() или Для Каждого ЭлементаСправочника ... Элемент.Удалить())?
5. Денис Кожухов (imozg) 29.11.15 21:47
6. Armando Armando (Armando) 30.11.15 02:51
Если вы используете копию базы для разработки, и у вас их не одна, то, возможно, вам будут полезными эти обработки. Обработки призваны сократить объем БД, за счет удаления ненужной информации для разработчика.

На файловой базе не приведет к уменьшению размера файла 1CD. Надо будет сжатие делать.
Для MS SQL тоже не приведет, если модель восстановления не simple. Для MS SQL лучше генерить скрипт, который truncate`ом очистит таблицы.
У нас для больших баз процесс подготовки тестовой базы выглядит примерно так:
1. Бэкап рабочей базы (BACKUP DATABASE)
2. Восстановление в промежуточную базу (RESTORE DATABASE)
3. Установка модели восстановления simple (ALT ER DATABASE SET RECOVERY SIMPLE)
4. Очистка некоторых таблиц. Файлы, КЛАДР и т.п. (TRUNCATE TABLE)
5. Сжатие (DBCC SHRINKDATABASE)
6. Бэкап подготовленной базы (BACKUP DATABASE)
7. Копирование на тестовый сервер
8. Восстановление в базы для разработчиков (RESTORE DATABASE)
Все этой естественно скриптом делается
delete; NeviD; +2 Ответить
7. Анянов Михаил (insurgut) 30.11.15 07:03
(5) imozg, тогда смысла в ней мало... При очистке многих регистров может просто напросто в нехватку памяти уйти.
8. Денис Кожухов (imozg) 30.11.15 07:20
(7) insurgut, не уйдет, потому что удаляется по одной записи.
9. Евгений Кредько (kredko) 30.11.15 08:20
Если используешь версионирование, то регистр нужно всё же периодически чистить даже в рабочей базе.
10. Анянов Михаил (insurgut) 30.11.15 08:53
(8) imozg, это еще печальнее :)
11. vx_gas vx_gas (vx_gas) 11.12.15 13:05
Если у кого не включен доступ на уровне записей можно "Объекты доступа документов почистить", там много того, что не нужно болтается.