На моем производственном сервере SQL Server 2008 настроена репликация моментальных снимков, и я только что заметил, что в папке моментальных снимков есть моментальные снимки, сделанные еще год назад. Как я могу изменить срок хранения этих снимков? В частности, я хотел бы сохранить снимки в течение 5 дней.
Вот скриншот папки, на которую я смотрю:
sql-server
sql-server-2008
replication
DForck42
источник
источник
Ответы:
Обычно это проблема, когда разрешения для xp_cmdshell были изменены по соображениям безопасности. Эта проблема также может возникнуть, если учетная запись агента SQL не имеет необходимых сетевых разрешений для удаления данных из папки репликации.
Убедитесь, что xp_cmdshell включен и что у учетной записи, выполняющей его, есть надлежащие разрешения.
Вывод должен быть:
источник
По моему опыту, сохранение папки моментальных снимков работает так:
Если анонимные подписчики не включены для этой публикации и если все подписчики использовали снимок, следующий запуск агента очистки удалит снимок.
Если анонимные подписчики включены и срок хранения рассылки истек, при следующем запуске агента очистки снимок удаляется.
В вашей ситуации, когда вы хотите сохранить моментальные снимки в течение 2 месяцев, вы можете сделать это, разрешив анонимные подписки и установив срок хранения рассылки 2 месяца, если это возможно.
Если ваша база данных распространения также используется для репликации транзакций, вы можете значительно увеличить базу данных распространения.
Надеюсь это поможет,
Matt
источник
Попробуй это:
Перейдите к свойствам монитора репликации (щелкните правой кнопкой мыши Replication Monitory -> Properties), и вы увидите там период хранения истории. Вы должны быть в состоянии установить его там.
источник