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

Откуда:
Сообщений: 545
Есть МSSQL 2000 база. Сама база около 10 Гбайт, раньше Transaction log не превышал 500 Мбайт, а вот за последний месяц вырос до 20 Гбайт. Я понимаю что кто то стал выполнять очень часто апдейт базы. Как вычислить виновника? Как посмотреть хотя бы каких таблиц производился апдайт? Может с этой стороны получится выявить причину. И какими современными инструментами можно посмотреть что твориться в Transaction log? Спасибо.
4 июл 11, 19:42    [10920618]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
DeColo®es
Member

Откуда: Москва
Сообщений: 5503
Блог
Небось, реиндексацию начали делать?
Это тоже логируемая операция.
4 июл 11, 20:06    [10920668]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
2king2
Member

Откуда:
Сообщений: 545
DeColo®es
Небось, реиндексацию начали делать?


Не уверен, но каких то разработчиков к базе допустили, это я точно знаю.
4 июл 11, 20:13    [10920681]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
скорее в фулл рекавери перевели, а до бакапа логов не дочитали в мсдн
4 июл 11, 21:01    [10920788]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
p.s.
"современными инструментами" считается переход на sql 2008 r2 для начала
4 июл 11, 21:02    [10920789]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
2king2
Member

Откуда:
Сообщений: 545
2king2
Как вычислить виновника?

Мне это надо не просто так! Дело в том что сервак упал на выходных, и в этом обвинили меня, то что я не добросовестно выполняю свои обязанности по администрированию. Но уходя на выходные на серваке было свободно 35 Гбайт. Этого было более чем достаточно. Но оказалось что нет!
4 июл 11, 21:05    [10920799]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
2king2
2king2
Как вычислить виновника?

Мне это надо не просто так! Дело в том что сервак упал на выходных, и в этом обвинили меня, то что я не добросовестно выполняю свои обязанности по администрированию. Но уходя на выходные на серваке было свободно 35 Гбайт. Этого было более чем достаточно. Но оказалось что нет!


не нужен лог и проблемы с его ростом - переводите БД в симпл
4 июл 11, 21:16    [10920821]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
2king2
Member

Откуда:
Сообщений: 545
Knyazev Alexey
не нужен лог и проблемы с его ростом - переводите БД в симпл


Сцыкотно, хотелось все же иметь возможность отката при крахе базы.
4 июл 11, 21:21    [10920837]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
2king2
Knyazev Alexey
не нужен лог и проблемы с его ростом - переводите БД в симпл


Сцыкотно, хотелось все же иметь возможность отката при крахе базы.


так вы бэкапы делайте чаще...при размере базёнки в 10Гб, полный бэкап можно генерить 4-8 раза в день, + разностный бэкап раз в час. Максимальная потеря данных = 1 часу.
4 июл 11, 21:27    [10920855]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
2king2
Member

Откуда:
Сообщений: 545
Knyazev Alexey
так вы бэкапы делайте чаще...при размере базёнки в 10Гб, полный бэкап можно генерить 4-8 раза в день, + разностный бэкап раз в час. Максимальная потеря данных = 1 часу.


Вы все правильного говорите, но парадокс в том что нельзя потерять ни одной записи. Сам поражаюсь такие жесткие условия, а сидим на старье.
4 июл 11, 21:36    [10920871]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
2king2
Вы все правильного говорите, но парадокс в том что нельзя потерять ни одной записи. Сам поражаюсь такие жесткие условия, а сидим на старье.

ну тогда покупайте дополнительные диски, они стоят копеек...ну и бэкап лога в руки
4 июл 11, 21:43    [10920886]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
2king2
Member

Откуда:
Сообщений: 545
Knyazev Alexey
ну тогда покупайте дополнительные диски, они стоят копеек...ну и бэкап лога в руки


Увы я бы рад, но я не знаю как поведет полка себя при извлечении диска из райда, так как какой то умник сервак поставил на RAID 5.
4 июл 11, 21:55    [10920920]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31964
2king2
Я понимаю что кто то стал выполнять очень часто апдейт базы. Как вычислить виновника?
Профайлером посмотрите.

И помониторьте размер лога - постоянно он растёт в течении всего дня или это разовый прирост. Может, это от какой то джобы...
4 июл 11, 23:11    [10921145]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
stavgreengo
Member

Откуда:
Сообщений: 710
Абсолютно схожие условия работы...тоже 2000, тоже жёсткие директивы ни терять ни транзакции, тоже старьё и таже FULL модель :) База юзаеться очень плотно, за сутки лог нагоняеться в 20Гб. Для себя проблему решил жёстким похериванием лога через backup log DBname with no_log и последующим dbcc shrinkfile('logname') сразу же после полного backup БД ежесуточно.
5 июл 11, 09:38    [10922175]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
stavgreengo
Абсолютно схожие условия работы...тоже 2000, тоже жёсткие директивы ни терять ни транзакции, тоже старьё и таже FULL модель :) База юзаеться очень плотно, за сутки лог нагоняеться в 20Гб. Для себя проблему решил жёстким похериванием лога через backup log DBname with no_log и последующим dbcc shrinkfile('logname') сразу же после полного backup БД ежесуточно.
И как же вы собираетесь не потерять ни транзакции, если у вас база навернется за 5 минут до полного бэкапа?

Ну и калссика жанра - сначала сервер должен весь день пыжиться и увеличивать лог, потом уменьшать. Но ему пофиг, он же железный, да?
5 июл 11, 10:03    [10922354]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
VAlexey
Member

Откуда:
Сообщений: 130
stavgreengo
Для себя проблему решил жёстким похериванием лога через backup log DBname with no_log и последующим dbcc shrinkfile('logname') сразу же после полного backup БД ежесуточно.

ИМХО, совет вредный
1) А вы пробовали на тестовом сервере смоделировать восстановление на середину рабочего дня...? Если вы ничего не умолчали, то не сможете.
2) делать shrink, если файл все равно вырастет, вредно
5 июл 11, 10:05    [10922368]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
baracs
Member

Откуда: Москва
Сообщений: 7217
alexeyvg
2king2
Я понимаю что кто то стал выполнять очень часто апдейт базы. Как вычислить виновника?
Профайлером посмотрите.

И помониторьте размер лога - постоянно он растёт в течении всего дня или это разовый прирост. Может, это от какой то джобы...
Сообщения о приращении файлов, обычно, пишутся в ErrorLog сервера. Т.е. на вопрос "когда?" ответить не сложно.
Ну а кто именно - таки да, профайлером смотреть какой процесс много записывал перед приращением лога...
5 июл 11, 10:13    [10922428]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Eagle_84
Member

Откуда: Москва
Сообщений: 1535
stavgreengo
Абсолютно схожие условия работы...тоже 2000, тоже жёсткие директивы ни терять ни транзакции, тоже старьё и таже FULL модель :) База юзаеться очень плотно, за сутки лог нагоняеться в 20Гб. Для себя проблему решил жёстким похериванием лога через backup log DBname with no_log и последующим dbcc shrinkfile('logname') сразу же после полного backup БД ежесуточно.


непонятно, почему backup transact log не делаете?
базы у вас небольшие, делайте каждые 30 минут бэкап транзактов и каждые 6 часов полный бекап (к примеру).
естественно, удаляйте бекап журналов с периодом 6 часов давности.

то 2king2
автор
...Как вычислить виновника?...

можно посмотреть когда увеличивался файл (записи логов сервера)
5 июл 11, 10:40    [10922662]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31964
baracs
alexeyvg
И помониторьте размер лога - постоянно он растёт в течении всего дня или это разовый прирост. Может, это от какой то джобы...
Сообщения о приращении файлов, обычно, пишутся в ErrorLog сервера. Т.е. на вопрос "когда?" ответить не сложно.
Размер - я имел в виду занятое место в файле лога.

Если файл урезать, то конечно можно и в ErrorLog посмотреть.
5 июл 11, 11:17    [10922935]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
2king2
Member

Откуда:
Сообщений: 545
tempdb тоже вырос до очень больших размеров. Вычисления времени когда это происходит ничего не дало. Время определно роста, а виновник нет.
7 июл 11, 10:13    [10936659]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31964
2king2
Вычисления времени когда это происходит ничего не дало. Время определно роста, а виновник нет.
В смысле, определили время или нет?

Если определили, смотрите джобы, опрашивайте пользователей.

Ну в крайнем случае запустите профайлер с фильтром на количество записей, может помочь.
7 июл 11, 10:43    [10936903]     Ответить | Цитировать Сообщить модератору
 Re: Transaction log очень вырос, как вычислить виновника?  [new]
Glory
Member

Откуда:
Сообщений: 104751
2king2
tempdb тоже вырос до очень больших размеров. Вычисления времени когда это происходит ничего не дало. Время определно роста, а виновник нет.

Ограничьте рост файлов. Первое, что упадет с ошибкой о нехватке места и будет виновником
7 июл 11, 10:45    [10936913]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить