SQL Server AlwaysON. Redo thread it totally blocked.

Поделиться
HTML-код
  • Опубликовано: 14 дек 2024

Комментарии • 8

  • @ЕвгенийЛунев-е1н
    @ЕвгенийЛунев-е1н 2 года назад

    Очень полезное видео!
    Спасибо, Александр!

    • @datainternalsru6025
      @datainternalsru6025  2 года назад

      Пожалуйста! Я рад, что материал был вам полезен!

  • @МихаилОвчинников-о5м

    Захватывающе.

  • @Ренат-ц8ж
    @Ренат-ц8ж 2 года назад

    Спасибо!

  • @wddingo
    @wddingo Год назад +1

    а без shrink`а инсёрты попадут сразу в БД при том, что бэкап продолжается?

    • @datainternalsru6025
      @datainternalsru6025  Год назад

      Добрый день! Да, операции модификации данных не должны испытывать проблем с REDO из-за бэкапа. Суть проблемы в том, что данные попадают в лог файл на вторичном узле, но REDO поток, "накатывающий" эти данные на database file заблокирован. В результате данные как бы есть (в транзакциооном лог файле) и одновременно ещё как бы и нет (в файле баз данных) :)
      На самом деле, заблокировать REDO можно не только бэкапом+шринк, есть ещё различные ситуации, когда REDO блокируется.
      Занятно, что вы спросили, я как раз сейчас разбираюсь в одной интересной ситуации, когда AG группа перекатилась, позеленела, а вот БД внутри неё не смогли почему-то разобраться кто из них primary, а кто secondary... :)))

    • @wddingo
      @wddingo Год назад

      @@datainternalsru6025 Доброго дня! Про то, что данные в логе, а редо-поток заблокирован я понял. Но я считал, что раз делается бэкап, то данные меняться не должны, а потому простой инсерт тоже не должен был дойти до БД, а остаться в логе до завершения бэкапа. Иначе может получиться, что данные у нас актуальные, а бэкап нет. Но тогда и селекты должны блокироваться, либо отрабатывать и после модифицироваться данными из лога, раз идет процесс бэкапа.
      Успехов вашим БД разобраться, кто из них главный =)