Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Объясните странное поведение SQL Server 2008 R2 !  [new]
OVoronov
Member

Откуда:
Сообщений: 77
Microsoft SQL server 2008 R2.
База была примерно 10Г. (Размер бакапа и файла MDF).
После удаления почти всех записей размер бакапа стал 300М.
Но в свойствах базы можно увидеть - размер базы 300М (и то на другом компе после шринка и восстановления из бакапа - см. ниже), размер лога 15Г.
Так, при восстановлении из 300М-ого бакапа (даже в новую, только что созданную базу) сначала проценты быстро доходят до 90% или до 100%, а потом он опять создает пустой лог в 15Г. Компьютер зависает на пару минут, прежде чем выдает "ОК".
(Не мог же лог 15Г быть помещен в 300М бакап). Бакап 300М пакуется 7-Zip теперь в 3М (до удаления записей 10Г паковались в 100М).

Стоял вопрос, как избавиться от лога в 15Г?

Есть пункт меню "Tasks-Shrink-Files". Выбираю тип шринка: вместо "Data" - "Log", показывается:
Currently allocated space: 15085,69 MB
Available free space: 15069,85 MB (99%)

Какой бы пункт внизу (Shrink action) ни выбирал:
Release unused space
Reorganize... Shrink file to: (там вводится размер, я пробовал 200 MB, 0 MB)

Лог-файл в файловой системе остается 15Г, свойства базы те же самые (лог 15Г).

Вот, выбрал третью опцию (Empty file by migrating the data to other files in the same filegroup) - заработало.
Хотя какие файлы были в той же группе файлов ("same filegroup"), и как освободилось место - непонятно.
Но... только если сначала (на этом или другом компе) восстановиться из бакапа.

Сейчас попробовал на собственно первой базе, в которой и производилось удаление данных, ничего не уменьшалось. Видимо, потому что она не восстанавливалась из бакапа, а все время работала.
Остановил веб-сервер (предотвратил обращения клиентов к ней), создал из нее бакап, восстановил её из бакапа. Все шринкнулось нормально. Почему так?!
21 окт 12, 23:24    [13353740]     Ответить | Цитировать Сообщить модератору
 Re: Объясните странное поведение SQL Server 2008 R2 !  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37050
Потому что вместо непонятных приседаний перед шринком лога надо делать chеckpoint.
22 окт 12, 01:52    [13354178]     Ответить | Цитировать Сообщить модератору
 Re: Объясните странное поведение SQL Server 2008 R2 !  [new]
OV2
Guest
Я тут почитал немного про CHECKPOINT.

Немного странно, что сервер всю ночь работал, а на следующий день всё еще были такие проблемы.
Вроде бы CHECKPOINT должно было устранить проблемы, если с удаления записей прошло немного времени, скажем, минута или час?
23 окт 12, 09:46    [13360320]     Ответить | Цитировать Сообщить модератору
 Re: Объясните странное поведение SQL Server 2008 R2 !  [new]
Ozerov
Member

Откуда: Москва
Сообщений: 3650
OV2
Я тут почитал немного про CHECKPOINT.

Немного странно, что сервер всю ночь работал, а на следующий день всё еще были такие проблемы.
Вроде бы CHECKPOINT должно было устранить проблемы, если с удаления записей прошло немного времени, скажем, минута или час?


Я пропустил или не написано про модель восстановления базы ?
23 окт 12, 10:01    [13360400]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить