Войти

Показать полную графическую версию : Уменьшение логов


Страниц : [1] 2

__sa__nya
30-06-2008, 17:43
Доброе время суток. Есть Microsoft SQL Server 2000, на нем некоторые логи разраслись сильно. Как их уменьшить, не повредив целостность базы? - Еще раз уточню, нужно не ограничить размер их разрастания, а уменьшить уже существующий, обрезать что ли.

Busla
30-06-2008, 23:17
[решено] Обрезаем файл транзакций логов... (http://forum.oszone.net/thread-94875.html) оно?

whitedog
01-07-2008, 23:48
DBCC SHRINKFILE

__sa__nya
02-07-2008, 16:45
Busla, попробую, скажу.
whitedog, подробнее про данную команду можно?

whitedog
02-07-2008, 23:23
Busla, попробую, скажу.
whitedog, подробнее про данную команду можно? »
Можно - http://msdn.microsoft.com/en-us/library/ms189493.aspx или BOL почитай. Гугль тоже вроде не в дауне. :-)

__sa__nya
04-07-2008, 13:40
Пробовал урезать логи DBCC SHRINKFILE, и просто командной 'shrink' из контекстного меню, но лог как был одного размера, так и остался.

whitedog
04-07-2008, 20:58
Пробовал урезать логи DBCC SHRINKFILE, и просто командной 'shrink' из контекстного меню, но лог как был одного размера, так и остался. »
Recovery model - full? Смени на simple.

__sa__nya
12-07-2008, 11:22
Все, получилось, всем спасибо. Тему можно закрыть.

im2002
21-07-2008, 14:34
отсоедини базу/базы с большими логами от сервера либо запустив соотв. хранимую процедуру либо dettach из Интерпрайз манагера. удали большие *.ldf-файлы. Подцепи к серверу базы по новой, ldf-ы создадуться сами и будут маленькие. Подрубай либо хранимой процедурой либо attach из Интерпрайз манагера.

Busla
21-07-2008, 14:53
im2002, плохой совет

im2002
21-07-2008, 15:44
im2002, плохой совет »
Поясни чем?!

Busla
21-07-2008, 17:46
im2002, потому что вместо того, чтобы найти первопричину и нормально настроить, предлагается сломать и понадеяться, что оно само восстановит недостающие файлы и так каждый месяц

__sa__nya
25-07-2008, 08:45
Еще такой вопрос. Логи на нужных базах я урезал пару недель назад. В свойствах указанной БД я задал размер лога транзакций, и отключил опции "автоматически увеличивать файл транзаций". Вчера появилась. следующая ошибка. Человек работал с 1С, которая как раз и хранит базу в SQL'е. Он внес в базу изменения, захотел их применить - вышла ошибка, (с его слов) в которой говорилось о том, что изменения применить невозможно, т.к. transaction log данной базы полный. Проблема была решена тем, что размер лога он увеличил еще на 500 МБ. Но я думаю что это временное решение и не совсем правильное. Объясните пожалуйста, почему SQL заругался на логи базы. Ведь как я понимаю (на основании того, что прочел в книге по SQL) - если у файла логов фиксированный размер, а в этот файл нужно еще что-либо записать, sql убирает из файла самые старые данные и вносит новые (требуемые) - т.е он автоматически подчищает в файле место, необходимое для внесения новых данных, удаляя при этом старые. - Тогда почему так получилось, или я что-то не так понял? Как можно устранить проблему? SQL Server 2000.

im2002
25-07-2008, 10:06
Да логи и должны расти а как они растут это СУБД решает. Я бы не советовал ставить в настройках базы ограничения на размер ldf-файла потому как закончиться это тем что база рухнет в суспект или ещё куда, запаришься вытягивать потом. У меня mdf~10Гб, ldf~7Гб и никакие шаманские пляски мне не помогли... долго описывать просто всё что я пытался делать... Поэтому делаю так: раз в неделю отсоединяю БД, удаляю ldf, подсоединяю БД по новой. И то это только из-за того чтоб размеры бэкапов логов уменьшить. Это правильные размеры файлов у нас так 60 филиалов работает у всех ldf 70-80% от mdf. Настрой минтранс план и не парься удаляй логи смело, за несколько дней они нарастут опять и от этого никуда не денешься. СКУЛЬ сам считает какие транзакции завершены а какие нет и почему он сразу не отсекает завершённые (т.е. уже записанные в БД) тоже объяснить можно.

__sa__nya
25-07-2008, 11:00
im2002, спасибо за совет, но может кто-нибудь ответит мне на мой вопрос?

Busla
26-07-2008, 01:25
im2002, о чём я и говорил ;)

__sa__nya, склоняюсь к уже озвученному: Recovery model - full? Смени на simple. »

__sa__nya
26-07-2008, 09:32
Цитата whitedog:
Recovery model - full? Смени на simple. » - Busla, подробнее можно, как это сделать?

Busla
26-07-2008, 12:15
__sa__nya, это свойства (параметры) базы данных - как называется соответствующая вкладка в enterprise manager я не помню. Но их там немного.

__sa__nya
28-07-2008, 08:52
А в чем вообще различие Recovery model simple/full? НА что это влияет?

Delirium
28-07-2008, 09:56
На возможности отката после сбоя системы. Recovery model - модель восстановления. В случае simple транзакция сразу подтверждается и не логгируется, т.е. восстановление будет довольно проблематичным из логов. Но я все равно ставлю simple всегда и просто делаю несколько ежедневных бекапов (простой, инкрементный и т.п.). И проще и удобней.




© OSzone.net 2001-2012