Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите уменьшить журнал транзакций  [new]
Olga3891
Guest
Log-файл превышает 3 Гб.
Пожалуйста, посоветуйте, как его уменьшить!!!
6 авг 02, 09:12    [43857]     Ответить | Цитировать Сообщить модератору
 Re:  [new]
AVL
Member

Откуда: МСК
Сообщений: 247
так сделайте ей (базе) shrink
6 авг 02, 09:23    [43862]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Oleksa
Member

Откуда: Киев
Сообщений: 192
Замечательный способ уменьшения лога (работает всегда и не требует перерыва в работе базы):
http://www.bstconsultants.com/tsug/Dec99/REDUCING_THE_SIZE_OF_THE_LOG_FILE.htm
6 авг 02, 09:43    [43866]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Olga3891
Guest
Но ведь журнал транзакций не уменьшиться при сжатии самой базы данных.
6 авг 02, 09:45    [43867]     Ответить | Цитировать Сообщить модератору
 Re  [new]
AVL
Member

Откуда: МСК
Сообщений: 247
https://www.sql.ru/forum/actualthread.aspx?bid=1&tid=10447
6 авг 02, 09:51    [43870]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Olga3891
Guest
Где пишуться команды SHRINKDATABASE и SHRINKFILE
6 авг 02, 10:17    [43877]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Oleksa
Member

Откуда: Киев
Сообщений: 192
В Query Analyzer
6 авг 02, 10:23    [43880]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Garya
Member

Откуда: Москва
Сообщений: 31335
Блог
Сначала необходимо устранить причину, а потом уже бороться с последствиями.
1. Нужно убедиться в том, что модель восстановления используемой тобой БД соответствует используемой тобой схеме архивирования. По умолчанию новая БД получает Full Recovery Model. Это подразумевает, что наряду с архивированием базы данных вы намерены еще делать архивирование журнала транзакций. Именно при архивировании журнала транзакций происходит очистка файла журнала транзакций отосевших в него транзакций (но не уменьшение его размера!). Если вы не намерены делать регулярное архивирование журнала транзакций, то сделайте так, чтобы он сам периодичсеки очищался с помощью установки в свойствах БД Simple recovery model.
2. После того как разберетесь с п.1 и очистите журнал транзакций, убедитесь в этом. Самый простой способ - запустите EM, выберите интересующую вас БД и в меню "вид" укажите "taskpad". В разделе Space Allocated вы увидите в виде гистограмм параметры использования файлов БД и журнала транзакций.
3. Если вам нужно усечь размер файла журнала транзакций, то используя Shrink file, вы можете теперь это сделать. Если с первого захода это сделать не удастся, значит вы наткнулись на нюансы, которые описаны в статьях на данном сайте, а также в многочисленных постингах на данную тему на форуме (поищите по "shrink file").
6 авг 02, 10:24    [43881]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Olga3891
Guest
Насколько я поняла, необходимо просто выполнить команду SHRINKFILE, при этом указав размер, до которого мы хотим уменьшить наш LOG-файл.Вопрос:А куда пропадет остальная часть файла?
6 авг 02, 10:35    [43887]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10724
Блог
Усечение transaction log в SQL Server 2000 с помощью команды DBCC SHRINKFILE
Метод быстрого усечения журнала транзакций и перевода БД в offline
6 авг 02, 11:44    [43929]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Olga3891
Guest
Удалось уменьшить log-файл всего на 285MB.ПОЧЕМУ???
8 авг 02, 06:42    [44513]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Александр Гладченко
Member

Откуда:
Сообщений: 10724
Блог
Причины заполнения журнала транзакций SQL серверов 4.2x, 6.0, 6.5, 7.0
8 авг 02, 10:03    [44550]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Помогите уменьшить журнал транзакций  [new]
Tray
Member

Откуда:
Сообщений: 138
ms sql 7.0
прочитал предложенные статьи, выполнил процедуры ниже, и бэкапировал транзакшн лог, и полностью базу, и сервак останавливал/перезагружал, базу детачил, ничего не помогло

DBCC SQLPERF (logspace)
DBCC UPDATEUSAGE(test)
DBCC SHRINKFILE(temp_log, 2)
BACKUP LOG test WITH TRUNCATE_ONLY
DBCC SHRINKFILE (test, 2)
EXEC sp_dboption 'test', 'trunc. log on chkpt.', 'TRUE'


DBCC SHRINKFILE(temp_log, 2) выдает следующее

DbId FileId CurrentSize MinimumSize UsedPages EstimatedPages
------ ------ ----------- ----------- ----------- --------------
47 2 300936 63 300936 56


DBCC SQLPERF (logspace) выдает следующее:

Database Name Log Size (MB) Log Space Used (%) Status
---------------------------------------------------------------------------------------------------------
test_buzmus 2351.0547 1.7974604 0

лог-файл никак не хочет транковаться, так и остается 2351мб.


единственное, не удалял лог, приаттачивая потом чисто mdf-файл, но что-то я побаиваюсь так делать.
товарищи, подскажите еще что-нибудь...
22 мар 18, 16:55    [21278358]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Konst_One
Member

Откуда:
Сообщений: 11517
не мучайте старичка 7.0 , дайте ему помереть спокойно
а по теме, 2гига - это для вас так существенно? может проще дискового пространства добавить на сервер?
22 мар 18, 17:02    [21278375]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
dsfyhj
Guest
https://docs.microsoft.com/ru-ru/sql/relational-databases/system-stored-procedures/sp-repldone-transact-sql

если в журнале транзакций имеются реплицированные транзакции, ставшие недействительными, и нужно усечь журнал:

EXEC sp_repldone @xactid = NULL, @xact_segno = NULL, @numtrans = 0,     @time = 0, @reset = 1  
22 мар 18, 17:03    [21278377]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
ну или перестать угадывать и посмотреть
sys.databases log_reuse_wai
22 мар 18, 17:07    [21278390]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Tray
Member

Откуда:
Сообщений: 138
не понял, что такое sys.databases log_reuse_wai
если имеется в виду таблица sysdatabases в БД master, то там нет такого поля

репликация не делается, поэтому вряд ли что-то там есть

плюс, это тестовая база, на которой лог 2гига, а на рабочей уже 50гигов, хотя mdf всего 5
22 мар 18, 17:41    [21278508]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
Tray
не понял, что такое sys.databases log_reuse_wai
если имеется в виду таблица sysdatabases в БД master, то там нет такого поля

репликация не делается, поэтому вряд ли что-то там есть

плюс, это тестовая база, на которой лог 2гига, а на рабочей уже 50гигов, хотя mdf всего 5

это вы побуквенно сравнивали название колонки? я исправлюсь log_reuse_waiT
22 мар 18, 17:43    [21278518]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Konst_One
Member

Откуда:
Сообщений: 11517
если вам транзакционный лог не нужен, то переведите тестовую базу в simple, полегчает
22 мар 18, 17:44    [21278528]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Tray
Member

Откуда:
Сообщений: 138
TaPaK
очень смешно, конечно нет.
ты точно говоришь о ms sql 7.0?

>>если вам транзакционный лог не нужен, то переведите тестовую базу в simple, полегчает
это ms sql 7.0, там нет такой опции, либо она совершенно по другому называется.
22 мар 18, 17:59    [21278617]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Konst_One
Member

Откуда:
Сообщений: 11517
не помню уже, может через трейсфлаг какой был
22 мар 18, 18:03    [21278640]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 6801
simple
exec sp_dboption DB,'trunc' 'true'
22 мар 18, 18:12    [21278660]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Tray
Member

Откуда:
Сообщений: 138
вобщем, сделал все это и что-то помогло, но не могу понять, почему...

сначала запустил все эти скрипты как писал выше, транк и все такое
сделал несколько раз шринки, транкейт лог, не помогло
потом создал мейтенененс план со шринком и реиндексом, он отработал, не помогло
делал бэкап транзакшн лога, не помогло
в итоге сделал опять шринк, тока убрал галочку шринк, оставив реиндекс, и лог исчез...

самое печальное в том, что я не запомнил точь в точь последовательность действий, только примерно, как написал выше :(

кстати, на тестовой базе помог другой вариант - деатачил базу, а потом приатачил только один файл mdf (sp_attach_single_file, как-то так наз-ся), и все норм заработало с размером лог файла 1 мб.
23 мар 18, 07:13    [21279298]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7758
Tray,

настоящий ученый должен вести дневник эксперимента!
23 мар 18, 13:12    [21280519]     Ответить | Цитировать Сообщить модератору
 Re: Помогите уменьшить журнал транзакций  [new]
Maxx
Member [скрыт]

Откуда:
Сообщений: 24290
backup log db_name to NULL без указания куда бекапить :) в 7-ке работало
23 мар 18, 13:30    [21280628]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить