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

Откуда:
Сообщений: 637
Наверное не я первый столкнулся с этой проблемой.
Диагноз: БЫСТРО РАСТУЩИЕ log-файлы.
Задача: Хотелось бы автоматизировать проблему раз и на всегда, чтобы не мониторить руками каталоги с логами.

Симптомы болезни:
- у нас есть БД в котрых нереально быстро растут логи
- стандартный майтенанс делается каждый день, но не помогает
- особо задрачивают бд, которые являются публикатороми в репликации - они вообще не понимают что такое shrink

Хотелось бы:
чтобы логи не росли вообще выше определнного размера или хотя бы гарантированно шринкались.
18 фев 13, 16:36    [13943922]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Spartakich
Member

Откуда: Riga
Сообщений: 380
RegisteredUser,

что такое "стандартный майтенанс" ?
18 фев 13, 16:38    [13943936]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Glory
Member

Откуда:
Сообщений: 104751
RegisteredUser
чтобы логи не росли вообще выше определнного размера или хотя бы гарантированно шринкались.

Журнал лога растет потому, что
- из него не удаляются завершенные транзакции
- транзакции очень большие
18 фев 13, 16:38    [13943939]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
Spartakich
RegisteredUser,

что такое "стандартный майтенанс" ?


siss созданный в Maintenance Plans
18 фев 13, 16:40    [13943956]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
Glory
RegisteredUser
чтобы логи не росли вообще выше определнного размера или хотя бы гарантированно шринкались.

Журнал лога растет потому, что
- из него не удаляются завершенные транзакции
- транзакции очень большие

про симптомы мы уже начитались тут все.
вопрос ЧТО надо сделать?
потому как ВСЕ удаления/репликации/и тд и тп происходят корректно нет нареканий ни на что кроме размера лога.
НО нам не понятно почему сервер не очищает логи сам.

есть вообще интерсное поведение базы в которую
- 1 раз в месяц заливаются данные
- потом эти данные реплицируются
- с самой базой не происходит никакх действий кроме заливки данных и репликации
а лог ее по 4-7 гиг, который шринкается только путем дропа реплиикации и шринка.


мы хотим куда-то пнуть сервак, чтобы он не умничал и не плодил логи по 10 гиг
мы сами будем отвечать за целостность данных и прочуюю лабуду.
18 фев 13, 16:45    [13944001]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Glory
Member

Откуда:
Сообщений: 104751
RegisteredUser
про симптомы мы уже начитались тут все.
вопрос ЧТО надо сделать?

Разве не очевидно ?
- усекать завершенные транзакции
- не делать больших и длинных транзакций

RegisteredUser
потому как ВСЕ удаления/репликации/и тд и тп происходят корректно нет нареканий ни на что кроме размера лога.
НО нам не понятно почему сервер не очищает логи сам.

Что значит "сам" ? Сервер сам переключит модель на simple ? Или сам сделает бэкап журнала ? Или сам решит проблему с репликацией ? Или сам завершит открытую пользователем транзакцию ?
18 фев 13, 16:48    [13944033]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
нет открытых транзакций!
загрузка проходит так:
- данные заливаются в таблицы -->> лог растет
- после заливки данных делается shrink -->>> лог не усекается, а иногда становится еще больше
- ночью происходт репликация и данные уходят на сабскрайберов и делается опять шринк -- лог не усекается
18 фев 13, 16:55    [13944092]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Spartakich
Member

Откуда: Riga
Сообщений: 380
RegisteredUser,

recovery model у баз какая ?
бекап логов делается ?
18 фев 13, 16:57    [13944110]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Glory
Member

Откуда:
Сообщений: 104751
RegisteredUser
загрузка проходит так:
- данные заливаются в таблицы -->> лог растет
- после заливки данных делается shrink -->>> лог не усекается, а иногда становится еще больше

И вы уже выяснили, чем же занят ваш лог ?
RegisteredUser
- ночью происходт репликация и данные уходят на сабскрайберов и делается опять шринк -- лог не усекается

И тут вы опять выяснили, чем же занят ваш лог ?
18 фев 13, 16:58    [13944118]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
Spartakich
RegisteredUser,

recovery model у баз какая ?
бекап логов делается ?


Recovery model: SIMPLE
Backup type: Full
(бекап делается каждую ночь)
18 фев 13, 16:59    [13944144]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
Glory
RegisteredUser
загрузка проходит так:
- данные заливаются в таблицы -->> лог растет
- после заливки данных делается shrink -->>> лог не усекается, а иногда становится еще больше

И вы уже выяснили, чем же занят ваш лог ?
RegisteredUser
- ночью происходт репликация и данные уходят на сабскрайберов и делается опять шринк -- лог не усекается

И тут вы опять выяснили, чем же занят ваш лог ?


в том то и вопрос, что мы бы и хотели посмотерть чем же он занят...
18 фев 13, 17:00    [13944162]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Glory
Member

Откуда:
Сообщений: 104751
RegisteredUser
в том то и вопрос, что мы бы и хотели посмотерть чем же он занят...

И что же вам мешает ?
Вы ждете, что сервер сам вам сообщит ?
18 фев 13, 17:02    [13944182]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
invm
Member

Откуда: Москва
Сообщений: 9688
RegisteredUser,

Лучше покажите результат выполнения
select name, recovery_model_desc, log_reuse_wait_desc from sys.databases where name in (<Список БД, у которых проблемы с логом>);
18 фев 13, 17:32    [13944423]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
invm
RegisteredUser,

Лучше покажите результат выполнения
select name, recovery_model_desc, log_reuse_wait_desc from sys.databases where name in (<Список БД, у которых проблемы с логом>);


recovery_model_desc = SIMPLE
log_reuse_wait_desc = NOTHING
18 фев 13, 17:44    [13944493]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
invm
Member

Откуда: Москва
Сообщений: 9688
RegisteredUser,

Ну вот и не трогайте логи, все с ними хорошо.
18 фев 13, 17:59    [13944584]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
invm
RegisteredUser,

Ну вот и не трогайте логи, все с ними хорошо.


10гиг лога при размере mdf файла в 2 гига - это как-то не очень красиво.
тем более если отстегнуть репликацию и сделать шринк, то размер лога сразу падает до 504 кб.
это так задумано или все же можно что-то сделать?
18 фев 13, 18:03    [13944609]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Glory
Member

Откуда:
Сообщений: 104751
RegisteredUser
10гиг лога при размере mdf файла в 2 гига - это как-то не очень красиво.
тем более если отстегнуть репликацию и сделать шринк, то размер лога сразу падает до 504 кб.
это так задумано или все же можно что-то сделать?

Посмотреть уже заполненность лога
18 фев 13, 18:03    [13944615]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
Glory
RegisteredUser
10гиг лога при размере mdf файла в 2 гига - это как-то не очень красиво.
тем более если отстегнуть репликацию и сделать шринк, то размер лога сразу падает до 504 кб.
это так задумано или все же можно что-то сделать?

Посмотреть уже заполненность лога


1. как это сделать?
2. можно сделатьтак, чтобы лог сам обрубался если его размер допустим 1 гиг?
18 фев 13, 18:32    [13944750]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37202
RegisteredUser
invm
RegisteredUser,

Ну вот и не трогайте логи, все с ними хорошо.


10гиг лога при размере mdf файла в 2 гига - это как-то не очень красиво.
10 гиг дискового пространства стоит 20 рублей. Вы уверены что вы хотите тратить свое время на экономию этих 20 рублей и на наведение "красоты"?
18 фев 13, 18:40    [13944772]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37202
RegisteredUser
2. можно сделатьтак, чтобы лог сам обрубался если его размер допустим 1 гиг?
Написать бессмысленную и беспощадную самообрубалку.
18 фев 13, 18:41    [13944779]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
invm
Member

Откуда: Москва
Сообщений: 9688
RegisteredUser
10гиг лога при размере mdf файла в 2 гига - это как-то не очень красиво.

Как перестать называть журнал транзакций SQL Server лог-файлом и прекратить борьбу за его размер
18 фев 13, 18:54    [13944826]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
насколько я понимаю, микрософт не поставляет с сервером никаких инструментов,
которые реально работают с логом.
лет 5 назад нам надо было восстановить данные по логу, так мы искали какую-то приблуду левую - помогло.

у меня есть такой эзотерический вопрос:
кто-то в обычной жизни без левых приблуд смог восстановить данные из лога?
если да, то как и чем?
18 фев 13, 19:13    [13944893]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37202
RegisteredUser
насколько я понимаю, микрософт не поставляет с сервером никаких инструментов,
которые реально работают с логом.
лет 5 назад нам надо было восстановить данные по логу, так мы искали какую-то приблуду левую - помогло.

у меня есть такой эзотерический вопрос:
кто-то в обычной жизни без левых приблуд смог восстановить данные из лога?
если да, то как и чем?
Все данные восстанавливаются из бэкапов командой рестор. Бэкапы бывают разные, в том числе и лога.
18 фев 13, 19:26    [13944946]     Ответить | Цитировать Сообщить модератору
 Re: Log для БД  [new]
RegisteredUser
Member

Откуда:
Сообщений: 637
invm
RegisteredUser
10гиг лога при размере mdf файла в 2 гига - это как-то не очень красиво.

Как перестать называть журнал транзакций SQL Server лог-файлом и прекратить борьбу за его размер


почитаю пожалуй енту статейку...
уж больно она прикольно написана...
18 фев 13, 19:42    [13944995]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить