|
|
|
MS SQL BACKUP LOG | ☑ | ||
|---|---|---|---|---|
|
0
dDemon
17.12.10
✎
06:44
|
подскажи, может кто сталкивался с такой проблемой.
Есть база на SQL 2005 примерно 100 Гб, Модель востановления -FULL. Делается бэкап раз в сутки, после чего делается shrink лога. Проблема: при бэкапе лог выростает до больших размеров, а так же сам бэкап соответственно тоже увеличивается в размерах больше чем сама база, и делается по времени уж очень долго, порядка 8-10 часов. Вопрос: Как можно сделать бэкап без лога, или вобще есть какиенибудь решения такой проблемы? Что бы уменьшить бэкап, а то бэкап в 180 Гб как-то не очень устраивает ... П.Ы. Пробывал переводить перед бэкапом базу в режим SIMPLE, всеравно лог выростает и бэкап занимже. |
|||
|
1
ДенисЧ
17.12.10
✎
06:50
|
при симпле лог бекапить бессмысленно
|
|||
|
2
strange2007
17.12.10
✎
06:57
|
в симпле лог вообще не растет
|
|||
|
3
упс
17.12.10
✎
06:58
|
лог из-за бэкапа вырастать не может, скорее всего у вас есть какой-нибудь хитрый джоб, типа перестройки индексов, который выполняется одновременно с бэкапом - из-за него и долгое время и большой бэкап (получается очень большая "активная" часть лога, которая бэкапится при полном бэкапе), из-за этого и в симпле у вас получается здоровенный бэкап
|
|||
|
4
упс
17.12.10
✎
06:59
|
(2) вообще-то растет...
|
|||
|
5
strange2007
17.12.10
✎
07:18
|
(4) я не спец по SQL... блин, ну не растет. Как может расти? Может скажете куда глянуть?
|
|||
|
6
упс
17.12.10
✎
07:25
|
||||
|
7
PowerBoy
17.12.10
✎
07:31
|
(0) А куда делается бакап?
|
|||
|
8
strange2007
17.12.10
✎
08:00
|
(6) Т.е. согласно "В простой модели восстановления — после достижения контрольной точки." можно точку сместить вперед? По дефолту она на нуле, значит не растет
|
|||
|
9
упс
17.12.10
✎
08:24
|
(8) не понимаю что значит "по дефолту она на нуле". Контрольная точка - это операция CHECKPOINT в модели восстановления симпл частота ее вызова зависит от двух условий: либо журнал заполнен на 70 процентов, либо при достижении такого числа записей в журнале, что SQL Server не успеет закончить восстановление за recovery interval.
http://msdn.microsoft.com/ru-ru/library/ms189573.aspx Именно поэтому, в обычных условиях, лог при простой модели восстановления дорастает до определенного размера и останавливается в росте. В принципе, этот же размер можно удержать и в модели восстановления FULL, опеределив нужную частоту бэкапов журнала транзакций. Случаи, при которых в простой модели восстановления возможен рост журнала транзакций перечислены во второй ссылке в (6) (хотя, фактически, проблемы сводятся к двум - "долгоиграющая" транзакция\транзакция изменяющая огромное количество данных и транзакционная репликация, ЕМНИП, она доступна в SIMPLE). Самый простой способ убедиться в том, что лог растет в симпл-модели восстновления - понаблюдать за tempdb после перезапуска SQL Server. Если не было изменения initial size, вы увидите как во время активной работы пользователей (когда у многих людей используются временные таблицы) растет ее лог. У меня на тестовом сервере initial size = 1MB, в данный момент размер лога около 450 MB. |
|||
|
10
EasyRider
17.12.10
✎
09:10
|
(9)Ага,лог растет.За счет незавершенных транзакций только.Если сделать для них commit, то и лог уменьшится,а не то что "до определенных размеров и останавливается"
|
|||
|
11
упс
17.12.10
✎
09:23
|
(10) без шринка никуда он не уменьшится. А при шринке уменьшится, условно говоря, до записи в последней\наиболее длительной активной транзакции.
"дорастет до определенных размеров и остановится" - имелось в виду, что он станет такого размера, что его хватит для хранения всех записей об активных транзакциях и ему не придется увеличиваться. Понятно, что если будет незавершенная транзакция рост не остановится, собственно, об этом и был пост в (9) |
|||
|
12
wPa
17.12.10
✎
09:56
|
(0)
"Модель востановления -FULL. Делается бэкап раз в сутки" Недопонял - зачем полная модель без дифференциронного бэкапа? Или раз в сутки журнал именно транзакций бекапится? "Проблема: при бэкапе лог выростает до больших размеров, а так же сам бэкап соответственно тоже увеличивается в размерах больше чем сама база, и делается по времени уж очень долго, порядка 8-10 часов." Ставь модель восстановления Simple и забудь уже про BACKUP LOG ) 370 гигов делаются Job Name BackUp Duration 01:18:19 (11) Если в опциях стоит автошринк - не нужно его отдельно делать. |
|||
|
13
упс
17.12.10
✎
10:18
|
(12) дифференциальный бэкап - это отдельный вид бэкапа, доступный в любой модели восстановления и к бэкапу журнала транзакций не имеющий никакого отношения.
Если в опциях на рабочей базе стоит автошринк - это весьма печально.. если база, конечно, не используется только для отчетов.. |
|||
|
14
dDemon
20.12.10
✎
10:42
|
да, действительно, есть перестройка индекса, попробую посмотреть как она накладывается на это.
|
|||
|
15
dDemon
20.12.10
✎
10:44
|
"Недопонял - зачем полная модель без дифференциронного бэкапа? Или раз в сутки журнал именно транзакций бекапится?"
нет, правильно поняли, имено полная копия базы, не разница и не лог, а база. Так вот поставлена была задача. ДУмаю пересмотреть ее. Поставил пока модель Simple, попробую проверить |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |