Имя: Пароль:
1C
 
Почему "пухнет" база и как ее уменьшить?!
,
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
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой