Задача очистки обслуживания SQL "Успешно", но не удаление файлов

У меня есть план обслуживания базы данных на сервере. В качестве составной части резервной копии является задача технического обслуживания.

Версия SQL 2008

Задача, которая "успешно" настроена как:

Delete backup files
Correct folder (same address as the backup task)
File extension: bak (NOT .bak)
Delete files older than: 20 Hour(s)

У меня есть другие подобные задачи очистки, которые происходят в том же плане обслуживания, которые работают нормально. Этот план работал хорошо в прошлом, я только заметил, что прошлой ночью он сообщил об "успехе", и остальная часть плана продолжалась, однако файл от 2 дней назад все еще остается.

Я проверил похожие вопросы, такие как этот вопрос, но это не так, поскольку моя задача по обслуживанию работала нормально два дня назад и в течение последних нескольких недель:

3 ответа

Решение

Проверьте файл, чтобы увидеть, является ли он действительным файлом резервной копии. Если файл поврежден или каким-либо другим образом поврежден, процесс удаления файла ничего не сделает. Вы можете проверить это, выполнив:

RESTORE HEADERONLY FROM DISK='d:\Path\To\Your\File.bak'

Другая возможная причина:

Проверьте владельца файлов резервных копий, которые не удаляются.

Я переместил хранилище резервных копий сервера SQL на другой диск, переместив все существующие файлы резервных копий в новое место в процессе.

После этого файлы принадлежали моему администратору и не могли быть удалены пользователем службы базы данных.

Чтобы исправить это легко:

  1. Откройте свойства резервной корневой папки
  2. Перейти к Security вкладку и нажмите на Advanced
  3. Установите правильного владельца, в моем случае SQL Engine,

    Обязательно включите Replace owner on subcontainers and objects Флажок!
  4. Нажмите OK, дождитесь окончания процесса и закройте все диалоги.

План обслуживания теперь сможет снова удалять файлы резервных копий.

Я испытывал ту же проблему. Предоставление системного администратора пользователю NT AUTHORITY\SYSTEM позволило запросу или заданию правильно выполнить удаление.

Другие вопросы по тегам