![]() |
![]() |
![]() |
|
Не работает автоматическая обрезка лога SQL | ☑ | ||
---|---|---|---|---|
0
Андрей Александрыч
23.12.09
✎
12:04
|
Скуль 2000, лог базы разрастается по несколько гигов в день, открыл свойства базы, на вкладке Transaction log в поле maximum file size проставил пункт restrict file growth и написал ему 30 гигов. После этого на вкладке "options" проставил галочку Auto shrink. Когда размер лога подошел к 30 гигам скуль перестал пускать пользователей с сообщением по аглицки нехватает места, большой лог файл и т.п...
|
|||
1
Sadovnikov
23.12.09
✎
12:05
|
(0) А нафига вам вообще логи нужны? Разностые бэкапы делаете?
|
|||
2
Андрей Александрыч
23.12.09
✎
12:08
|
(0) сорри за тупизм, имеете в виду дифференцированные? Нет, не делаем, делаю раз в день полный бэкап и перекидываю его в надежное место...
|
|||
3
Sadovnikov
23.12.09
✎
12:09
|
(2) Ну и перевести тогда модель в Simple.
|
|||
4
Господин ПЖ
23.12.09
✎
12:09
|
а модель то какая? full?
|
|||
5
Андрей Александрыч
23.12.09
✎
12:13
|
+2 я со скулем только начал работать, все сделал по статьям, описывающим переход с дбф на скл. Там было написано, делаем мдф, делаем лог. Не задумывался над тем, нужен он нам вообще или нет. Знающие люди рассказывали что в случае чего лог позволит восстановить базу по состоянию на любую временную точку, которую он "захватывает". Решили дать ему 30 гигов, в Книга знаний: Почему разрастается журнал транзакций - файл .LDF для MS-SQL я прочитал как делать авто шринк... В принципе если он не будет разрастаться, то пусть лучше будет...
(4) да, модель фулл (3) simple это для одного юзера чтоли? Монопольный доступ? Кому он нужен? |
|||
6
Sadovnikov
23.12.09
✎
12:14
|
(5) Может, стоит еще доку подчитать? Про монопольный доступ и модели, например? Да и про бэкапы - тоже.
|
|||
7
Господин ПЖ
23.12.09
✎
12:15
|
если фулл - делайте job на шринк или в симпл переводите...
>>simple это для одного юзера чтоли? симпл - модели востановления и single user - разные вещи |
|||
8
Андрей Александрыч
23.12.09
✎
12:16
|
(7) о, спасибо, врубился... Если сделать симпл, то будет автоматически обрезаться, я правильно понимаю???
|
|||
9
Господин ПЖ
23.12.09
✎
12:20
|
(8) он будет в меньшей степени использоваться + автоматически резаться на чекпоинтах
|
|||
10
fisher
23.12.09
✎
12:23
|
(8) Зафиксированные транзакции будут автоматически удаляться из лога. Обрезание файлов сиквел никогда добровольно не делает. Т.е. если мегатранзакцию запустите, лог всё равно раздует и размер не изменится, когда она зафиксируется. Просто место внутри лога освободится. Вообще странно. При полном бэкапе зафиксированные транзакции также должны вычищаться из лога. Т.е. при штатной нагрузке на базу (без мегареструктуризаций и перепроведений) лог не должен был постоянно расти.
|
|||
11
fisher
23.12.09
✎
12:26
|
Или вы бэкап не сиквельный делали, а выгрузку из конфигуратора?
|
|||
12
Андрей Александрыч
23.12.09
✎
12:32
|
(6) Вот я и прочитал:
Параметр Auto shrink Если значение этого параметра установить TRUE, база данных и журнал транзакций будут автоматически уплотняться, что позволит сохранить место на жестком диске. Марк Шпеник, Руководство администратора баз данных MICROSOFT SQL Server 2000 И нихрена не работает... Что я сделал не так? (8) Марк Шпеник, Руководство администратора баз данных MICROSOFT SQL Server 2000: Simple. База данных может быть восстановлена до последнего резервного копирования, однако без журнала транзакций. Применять это значение параметра в коммерческих базах данных не рекомендуется, потому что он обеспечивает только самый низкий уровено защиты данных Full. База данных может быть восстановлена на заданный момент времени, вплоть до момента аварии. Это значение обеспечивает самый высокий уровень защиты данных Сами - то каким пользуетесь? |
|||
13
Господин ПЖ
23.12.09
✎
12:34
|
(12) автошринк высвобождает место в журнале, не сокращая его размер
|
|||
14
Sadovnikov
23.12.09
✎
12:35
|
(12) Нафига тебе Full, если ты делаешь только "полный" бэкап? Ты почитай, в какой ситуации можно восстановить базу "на заданный момент времени".
|
|||
15
Андрей Александрыч
23.12.09
✎
12:35
|
(13) прикольно... а что ж делать для того, чтобы он уменьшал его размер?
(11) сиквельный, сиквельный... |
|||
16
Андрей Александрыч
23.12.09
✎
12:35
|
(14) ладно, уговорили :) ставлю симпл)
|
|||
17
Господин ПЖ
23.12.09
✎
12:36
|
(15) job нужен нормальный.
|
|||
18
Андрей Александрыч
23.12.09
✎
12:37
|
(17) вот что мне другой мозг дал: это оно?
backup log test_log with truncate_only go dbcc shrinkfile('test_log', truncateonly) go |
|||
19
fisher
23.12.09
✎
12:40
|
(15) Автошринк как раз обрезает файл, уменьшая размер. Но обрезает только свободное место с конца (по умолчанию). Если файл фрагментирован, то размер может и не уменьшиться. Можно делать шринк со спец-параметрами, заставив дефрагментировать файл, но это долго. Simple плюс автошринк практически даёт гарантию, что расти не будет. Т.к. обрезание почти всегда будет проводится при появлении свободного места в конце файла.
|
|||
20
fisher
23.12.09
✎
12:42
|
(18) Первая команда удаляет из журнала транзакций зафиксированные транзакции
Вторая - срезает свободное место в конце файла журнала транзакций. |
|||
21
Андрей Александрыч
23.12.09
✎
12:44
|
(19) я окончательно запутался...
"(13) автошринк высвобождает место в журнале, не сокращая его размер" "(19) Автошринк как раз обрезает файл, уменьшая размер" (20) мне просто не хоцца писать код, задача ведь простецкая, я еще даже не знаю куда его в скуле писать, чтобы он выполнился... Думал можно галочками - переключателями настроить... Короче ставлю симпл и врубаю авто шринк... |
|||
22
fisher
23.12.09
✎
12:50
|
(21) "Короче ставлю симпл и врубаю авто шринк..." Вот и ладушки.
Если оставить Full плюс запуск джоба (18) перед полным бэкапом, то теоретически сможете восстановить базу на момент после сбоя, если умрёт mdf, а ldf выживет. И то шаманить придется. Штатно модель Full предполагает создание бэкапов журнала транзакций. |
|||
23
Андрей Александрыч
23.12.09
✎
12:51
|
(22) а можете про джоб поподробней рассказать, так, что называется для общего развития? Или сцылочку кинуть на внятный ресурсик... Буду очень благодарен
|
|||
24
Lionee
23.12.09
✎
13:01
|
||||
25
fisher
23.12.09
✎
13:06
|
(23) Не запаривайся с T-SQL.
Иди Management->Maintenance Plans Там практически любой джоб первой необходимости можно мастером склепать методом научного тыка. |
|||
26
Андрей Александрыч
24.12.09
✎
09:37
|
Блин, народ, после простановки simple и установки флага Auto Shrink лог стал весить 39 Мб... Не маловато - ли? То он 30 гигов весит, то 30 метров...
|
|||
27
ДенисЧ
24.12.09
✎
09:39
|
(26) нормально. Он скоро вырастет, и растишки не нужно
|
|||
28
Lionee
24.12.09
✎
09:45
|
(26)то много , то мало вас не поймешь. сколько надо метров? :-D
|
|||
29
Андрей Александрыч
24.12.09
✎
10:18
|
(28) :-D да жесть вообще, я сам в шоке)) сколько вешать в граммах )))))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |