Имя: Пароль:
1C
 
Шринк лога транзакций по расписанию при полной модели восстановления
0 squidw
 
24.04.17
15:38
Как обрезать лог журнала в MSSQLServer, если должна использоваться полная модель восстановления и при этом хотелось бы не делать обрезку лога руками путем смены на модель simple-> обрезка-> возврат на full. В панели элементов в планах обслуживания есть элемент "сжатие базы данных", но мне не нужно резать ИБ мне нужно резать лог. Как это сделать?
1 Вафель
 
24.04.17
15:43
нужно бэкап делать
2 Ёпрст
 
24.04.17
15:50
(0) в плане обслуживания делаешь бекап лога и потом стрелочкой , после бекапа, произвольный sql запрос со шринком. Усё.
3 cons74
 
24.04.17
15:57
Неверная постановка задачи. На всех sql-форумах дано написано что шринк лога - зло. Как и шринк базы.
4 cons74
 
24.04.17
15:57
Чего вы хотите добиться?
5 squidw
 
26.04.17
22:45
(3) (4) Как чего, чтобы файл ldf в один прекрасный день не забил полностью винт.
Хорошо если одна ИБ, а если много и/или каждая быстро растет в разрезе ldf. Шринк лога зло - ИБ наверно, а шринк лога почему бы и нет не пойму, по форумам могут писать всё что угодно до тех пор пока на них не появлятеся отсылка к рекомендациям производителя ПО. В конце концов шринк ldf для чего то же придумали? Другие варианты?
6 Йохохо
 
26.04.17
23:01
(5) просто напиши на бумажке. Шринк лога в полной модели, возьми и напиши
7 Йохохо
 
26.04.17
23:04
"Как чего, чтобы файл ldf в один прекрасный день не забил полностью винт." это другая задача, лдф он
8 pessimist
 
27.04.17
16:04
(0) Не нужно делать шринк лога транзакций.
Нужно делать бэкап лога транзакций и следить за свободным местом на диске и размером файла лога транзакций. Если свободного места достаточно и файл не растёт то больше ничего не нужно делать.
9 squidw
 
27.04.17
22:18
(8) В моем случае места недостаточно. И из этого следует а как анализировать тогда когда лог остановится в своем росте, чтобы  подобрать другой винт раз резать его черт побери нельзя.
10 Джинн
 
27.04.17
22:35
(9) Бекапьте базу и он не будет расти сверх необходимого.
11 Fragster
 
гуру
27.04.17
22:46
а нудно ли автору иметь возможность восстановиться до произвольного момента времени?
12 Fragster
 
гуру
27.04.17
22:46
*нужно?
13 Fragster
 
гуру
27.04.17
22:46
если нет - то поставить модель восстановления simple и всё
14 Fragster
 
гуру
27.04.17
22:46
на крайний случай в дополнение к ночному бэкапу можно делать diff бэкап каждый час
15 Aleksey
 
27.04.17
22:53
Зачем вам лога, если единственная его задача у вас - это делать шринк?
16 zva
 
28.04.17
06:41
(0) А для чего используется полная модель восстановления, если не делается бэкап лога транзакций? Без них все равно нельзя восстановиться до произвольного момента времени.
17 squidw
 
29.04.17
00:23
(16) Полная модель нужна для восстановления на момент времени через журналы транзакций. Вообще в резервном копировании у меня используется все три уровня: полный(месяц), диф(один раз пн-сб) и журнал(каждый день каждый час). Вопрос лишь в том что количество ИБ стало больше и сами ИБ активнее используются. Про то что в случае шринк журнала ldf я не смогу восстановится на момент времени в первый раз слышу. Ведь при резервном копировании журнала формируется файл trn, при чем тут обрезка ldf, или я что-то упустил?
18 Jump
 
29.04.17
01:08
Если вам не нужно восстановление на произвольную точку - включите простой режим и не парьте себе мозг.

Если нужно - тогда надо понять одну простую вещь. Лог растет только в случае неправильной работы.
Т.е если лог растет сверхмеры значит вы неправильно работаете с БД.
Что только с бедным логом не делают, но прочитать книжку по работе MS SQL и освоить парочку полезных скриптов - это всегда лень.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.