|   |   | 
| 
 | Почему "пухнет" база и как ее уменьшить?! | ☑ | ||
|---|---|---|---|---|
| 0
    
        Mihasya 13.08.22✎ 01:05 | 
        Есть база ЗУП на SQL, размер 41Гиг, делаю выгрузку в dt, получаю около 2Гиг, потом создаю чистую SQL базу, загружаю туда, получается около 27Гигов, после запускаю тестирование и исправление и после этого база возрастает до 53Гигов ((( 
 Чо за дела?! По идее она должна наоборот сжаться!!! | |||
| 1
    
        Сергиус 13.08.22✎ 01:56 | 
        (0)Какие галки ставишь при ТиИ?     | |||
| 2
    
        Aleksey 13.08.22✎ 03:32 | 
        Почему должна сжаться? Обычное поведение     | |||
| 3
    
        Mihasya 13.08.22✎ 07:31 | 
        (1) все     | |||
| 4
    
        Mihasya 13.08.22✎ 07:31 | 
        (2) а что там появляется нового?     | |||
| 5
    
        АНДР 13.08.22✎ 07:40 | 
        LDF пухнет?     | |||
| 6
    
        Фрэнки 13.08.22✎ 07:52 | 
        могу ошибаться, т.к. его влияние перепроверить нужно.
 В режиме ТИИ в файловой базе имеется пункт для упаковка таблиц в самом конце ТИИ и можно включать или не включать В скл-базы ТИИ с такого пункта в доступных действиях нет. Имхо, так называемый шринк оставлен в СУБД и его запуск в администрировании СУБД. | |||
| 7
    
        Фрэнки 13.08.22✎ 07:54 | 
        И как ее уменьшить ... А она заново распухнет через какое-то время. Бесполезно ее уменьшать с помощью ТИИ. Особено, если это скл-база     | |||
| 8
    
        TormozIT гуру 13.08.22✎ 08:08 | 
        (0) Если ты создаешь объекты по битым ссылкам (при всех галках такое вполне вероятно) при тестировании, то даже сами данные могут увеличиваться в зависимости от количества битых ссылок.     | |||
| 9
    
        RomanYS 13.08.22✎ 10:10 | 
        (0) так все таблицы пересоздались при реструктуризации, место от старых не высвобождалось. Вот и х2     | |||
| 10
    
        Гобсек 13.08.22✎ 10:24 | 
        (9) Попробовать ради интереса сначала сделать ТИИ, затем выгрузить и загрузить.     | |||
| 11
    
        Фрэнки 13.08.22✎ 10:40 | 
        (10) кому попробовать?
 после ТИИ шринк и все. Что там еще пробовать-то. Прикольно, какую цель ТС преследовал, когда запустил ТИИ после загрузки из ДТ. У него не возникло подозрения, что от этого никакого значимого эффекта не появится, кроме возникновения на сервере каких-то временных таблиц, файлов и т.п.? | |||
| 12
    
        Гобсек 13.08.22✎ 11:04 | 
        (11) Если человеку интересно, насколько всё написанное в ветке соответствует действительности. И не жалко потратить на это время. И поставить в известность читателей этой ветки о результатах.     | |||
| 13
    
        Chai Nic 13.08.22✎ 11:33 | 
        База ЗУП на 41 гиг..это что же за организация такая? У нас на 1000 сотрудников за 10 лет всего к десятку гигабайт подобралось.     | |||
| 14
    
        Фрэнки 13.08.22✎ 11:37 | 
        (13) ну может туда все мыслимые и немыслимые кладры закачали. Дурное дело не хитрое.     | |||
| 15
    
        Гость из Мариуполя гуру 13.08.22✎ 12:09 | 
        (13) а у тебя с фотками? на всех сотрудников? а какой формат и какое разрешение у фоток?     | |||
| 16
    
        rphosts 13.08.22✎ 12:41 | 
        Версионирование вкл?
 А если выполнить до и после следующией вызов USE [DatabaseName] GO CREATE TABLE #temp ( table_name sysname , row_count INT, reserved_size VARCHAR(50), data_size VARCHAR(50), index_size VARCHAR(50), unused_size VARCHAR(50)) SET NOCOUNT ON INSERT #temp EXEC sp_msforeachtable 'sp_spaceused ''?''' SELECT a.table_name, a.row_count, COUNT(*) AS col_count, a.data_size FROM #temp a INNER JOIN information_schema.columns b ON a.table_name collate database_default = b.table_name collate database_default GROUP BY a.table_name, a.row_count, a.data_size ORDER BY CAST(REPLACE(a.data_size, ' KB', '') AS integer) DESC DROP TABLE #temp Какие таблицы будут лидерами роста? | |||
| 17
    
        Chai Nic 14.08.22✎ 07:51 | 
        (15) Без фоток, без аттачей.     | |||
| 18
    
        ptiz 14.08.22✎ 09:42 | 
        (0) С чего это она должна сжаться? При реструктуризации создаются копии почти всех таблиц и объем удваивается. Потом внутри mdf остается неиспользуемое место. Забей.     | |||
| 19
    
        Обработка 15.08.22✎ 07:09 | 
        (0) Реиндексация базы скуля и потом шринк базы это максимум что ты можешь сжать в базе. И это реальный минимальный объем базы.     | |||
| 20
    
        Chai Nic 15.08.22✎ 07:25 | 
        (16) Влияние версионирование на рост объема базы слегка преувеличено. Версии хранятся в сериализованном виде, в блобах, и занимают места чуть ли не на порядок меньше, чем исходный объект во всех своих таблицах. Их можно вечно хранить, это копейки.     | |||
| 21
    
        shuhard 15.08.22✎ 07:34 | 
        (19) [И это реальный минимальный объем базы.]
 нет конечно, кроме шринка есть хранение в сжатом виде. каждую таблицу/все таблицы чохом, размер mdf упадёт в 5-7 раз, с неким падением скорости выборки скрипты на IS лежат давно | |||
| 22
    
        shuhard 15.08.22✎ 07:36 | 
        (21) для таблиц это:
 ALTER TABLE ... REBUILD PARTITION = ALL WITH (DATA_COMPRESSION = PAGE) | |||
| 23
    
        Chai Nic 15.08.22✎ 07:37 | 
        (22) Это с какой версии mssql работает?     | |||
| 24
    
        shuhard 15.08.22✎ 07:44 | ||||
| 25
    
        shuhard 15.08.22✎ 07:45 | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |