Начало » Использование СУБД » Microsoft SQL Server » Заполнение журнала транзакций REPLICATION (Механизм очистки журнала транзакций)
|
Re: Заполнение журнала транзакций REPLICATION [сообщение #6220 является ответом на сообщение #6216] |
Sun, 07 September 2025 11:55  |
BlackEric
Сообщений: 393 Зарегистрирован: June 2022
|
Senior Member |
|
|
Когда два дня «упал» сетевой интерфейс, лог-ридер (и Debezium) остановились - никто не съедал LSN.
При этом, если лог-бэкапы либо не делались, либо они не могли откатить эти неподтверждённые сегменты, журнал тупо рос до переполнения.
Да, вы правильно понимаете: записи лога живут до тех пор, пока ВСЕ подписчики (репликация, Capture Agent и пр.) не «проглотят» соответствующие LSN, и одновременно вы не выполните бэкап лога, позволяющий усечь старые записи.
CDC retention ни в коей мере не освобождает место в транзакционном логе — это просто срок жизни строк в таблицах.
Чтобы избежать повторения настройте регулярные бэкапы лога (каждые, скажем, 15–30 мин).
Мониторьте статус Log-Reader Agent/Capture Agent и вовремя реагируйте на их падения.
При долгих простоях репликации/CDC можно временно приостановить её, но логовые бэкапы всё равно должны идти, чтобы старые записи очищались.
При необходимости - увеличьте retention CDC-таблиц, но главное - обеспечить беспрерывное потребление лога и бэкапы лога.
|
|
|
Переход к форуму:
Текущее время: Mon Sep 08 00:49:13 GMT+3 2025
Общее время, затраченное на создание страницы: 0.00593 секунд
|