1. b-dm 169 21.05.19 17:13 Сейчас в теме

Размер баз данных SQL сервера 2012 и 2017

Подскажите пожалуйста, почему одни те же SQL ные базы в SQL сервере 2012 и в 2017 могут настолько различаться в своих размерах ?

База в 2012 SQL весит 15 Гигабайт, та же самая база в 2017 SQL весит 24,5 Гигабайта. В чем может быть причина такой разницы, обе базы делал Shrink.
Ответы
Избранное Подписка Сортировка: Древо
2. Xershi 631 21.05.19 17:40 Сейчас в теме
(1) может быть из-за размера лога и режима восстановления. А конфа одна?
6. b-dm 169 22.05.19 11:05 Сейчас в теме
(2) - размер лога на 2017 сервере сейчас минимален. Режим восстановления какой нужно указать для того, чтобы база стала весить меньше ?) И где его смотреть ?
8. Xershi 631 22.05.19 11:11 Сейчас в теме
(6) не фул конечно. Я не админю, не скажу. Колупался когда делал обновление УТ.
3. Xershi 631 21.05.19 17:41 Сейчас в теме
А чтобы точно ответить в чем разница можно использовать решение для определения размера таблиц.
5. b-dm 169 22.05.19 11:00 Сейчас в теме
(3) - а можно точнее узнать, что это за решение ?
7. Xershi 631 22.05.19 11:06 Сейчас в теме
12. b-dm 169 22.05.19 11:45 Сейчас в теме
(7) - сорри, проглядел гиперлинк :) сейчас посмотрю...
4. herfis 281 21.05.19 17:47 Сейчас в теме
Шринк с дефолтными опциями только с конца файла свободное место отдает. А это - как повезет. Не показатель, короче.
Потыкайся в контекстном меню базы - там где-то можно посмотреть сколько реально данные занимают места, в том числе с детализацией до таблиц.
9. b-dm 169 22.05.19 11:15 Сейчас в теме
нашел вот такой запрос, который помог посмотреть размеры таблиц:
SEL ECT
t.NAME AS TableName,
s.Name AS SchemaName,
p.rows AS RowCounts,
SUM(a.total_pages) * 8 AS TotalSpaceKB,
CAST(ROUND(((SUM(a.total_pages) * 8) / 1024.00), 2) AS NUMERIC(36, 2)) AS TotalSpaceMB,
SUM(a.used_pages) * 8 AS UsedSpaceKB,
CAST(ROUND(((SUM(a.used_pages) * 8) / 1024.00), 2) AS NUMERIC(36, 2)) AS UsedSpaceMB,
(SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSpaceKB,
CAST(ROUND(((SUM(a.total_pages) - SUM(a.used_pages)) * 8) / 1024.00, 2) AS NUMERIC(36, 2)) AS UnusedSpaceMB
FR OM
sys.tables t
INNER JOIN
sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN
sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN
sys.allocation_units a ON p.partition_id = a.container_id
LEFT OUTER JOIN
sys.schemas s ON t.schema_id = s.schema_id
WHERE
t.NAME NOT LIKE 'dt%'
AND t.is_ms_shipped = 0
AND i.OBJECT_ID > 255
GROUP BY
t.Name, s.Name, p.Rows
ORDER BY
t.Name
10. b-dm 169 22.05.19 11:20 Сейчас в теме
Правда это не сильно помогло, как тысячи таблиц с наименованиями, которые никак не получается идентифицировать :)
11. b-dm 169 22.05.19 11:44 Сейчас в теме
Что то мне подсказывает . что возможно БД на старом сервере так сжимает программа обслуживания БД, которая у нас установлена. Но уверено говорить об этом смогу лишь когда переставлю программу на новый сервер, а для этого нужно деактивировать лицензию на старом сервере....

Но в целом - это ситуация ненормальная . когда на более современном сервере БД весит намного больше чем на старом, или это норма и так и должно быть?
13. Xershi 631 22.05.19 12:17 Сейчас в теме
(11) я думаю там есть настройка сжатия. Но это к админам нужно на консультацию.
14. b-dm 169 22.05.19 13:09 Сейчас в теме
(13) - здесь такая странная ситуация что админы, админят только сервера , но не SQL сервер :)
15. a.doroshkevich 461 23.05.19 12:27 Сейчас в теме
По базе - ПКМ - сжать - файлы (только не выполняйте процедуру, просто посмотрите цифры)
Там увидите и реальный размер данных и сколько пустого места в них, а так же реальный размер лога транзакций и сколько там пустого места
16. b-dm 169 23.05.19 17:51 Сейчас в теме
(15) - я сделаю так конечно, после отпишусь о результате...
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Программист 1С
Ижевск
зарплата от 70 000 руб. до 94 000 руб.
Полный день

Программист 1С
Санкт-Петербург
зарплата до 120 000 руб.
Полный день

Программист 1С
Санкт-Петербург
Полный день

Консультант 1С
Нижний Новгород
зарплата до 100 000 руб.
Полный день