Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как уменьшить размер БД после удаления записей содержащих image?  [new]
sereban
Member

Откуда:
Сообщений: 38
Имеется следующая таблица:

Table Name # Records Reserved (KB) Data (KB) Indexes (KB) Unused (KB)
dbo._InfoRg4406 7 655 220 56 248 432 51 920 920 4 333 824 23 783


В таблице содержится поле типа image, в котором 1С хранит некое значение (таблица создана платформой 1С). Данные, которые хранятся в image, не являются настолько критичными, чтобы делать их бэкап также часто, как и самой БД, но они занимают слишком много места. Было реализовано следующее: создана отдельная БД2, в таблицу которой перенесены данные image, а в таблицу основной БД добавлено поле со ссылкой на запись в БД2. Поле image после переноса в основной БД было заполнено стандартным для 1С значением (0x01010800000000000000EFBBBF7B2255227D - это значение платформа 1С записывает в image, если в 1С оставить его не заполненным).

В результате в таблице появилось 32Гб свободного места:

Table Name # Records Reserved (KB) Data (KB) Indexes (KB) Unused (KB)
dbo._InfoRg4406 7 655 220 56 248 432 19 520 920 4 333 824 32 393 688


Но размер самой БД и бэкапа не уменьшился. Пробовал сделать SHRINKDATABASE и REBUILD индексов этой таблицы. Не помогло.
Что нужно сделать, чтобы уменьшить размер БД?

p.s. Данные, которые хранятся в image предварительно сжимаются 1С, так что вариант со сжатием таблицы sql для уменьшения ее размера не проходит.
16 ноя 14, 20:39    [16854945]     Ответить | Цитировать Сообщить модератору
 Re: Как уменьшить размер БД после удаления записей содержащих image?  [new]
invm
Member

Откуда: Москва
Сообщений: 9825
1. Меняем тип столбца на binary подходящей длины;
2. alter Таблица rebuild;
3. Меняем тип столбца на image.

Либо
1. Удаляем столбец;
2. dbcc cleantable;
3. Добавляем столбец.
16 ноя 14, 21:08    [16855049]     Ответить | Цитировать Сообщить модератору
 Re: Как уменьшить размер БД после удаления записей содержащих image?  [new]
Glory
Member

Откуда:
Сообщений: 104751
http://technet.microsoft.com/en-us/library/ms174418(v=sql.110).aspx
16 ноя 14, 21:08    [16855050]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить