Почему мои резервные копии SQL Server 2005 не удаляются? - PullRequest
4 голосов
/ 24 ноября 2008

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

Информация о сервере БД: SQL Server Standard Edition 9.00.3042.00

Существует «Задача очистки обслуживания», установленная на

«Поиск папки и удаление файлов по расширению»

и «Удалить файлы в зависимости от возраста файла во время выполнения задачи» отмечены и установлены на 4 недели.

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

Также: я видел проблемы до SP2, но у меня запущен пакет обновления 2.

Ответы [ 4 ]

2 голосов
/ 24 ноября 2008

Если вы делаете резервные копии в подпапках, вы должны указать точную подпапку для удаления.

Например:

Вы создаете резервную копию, выбрав опцию, которая говорит что-то вроде «Создать один файл резервной копии для каждой базы данных», и установите флажок «Создать подпапку для каждой базы данных». (Я работаю с немецкой версией SQL Server, поэтому теперь я сам все перевожу на английский)

Указанная папка H: \ Backup , поэтому резервные копии будут фактически создаваться в папке H: \ Backup \ DatabaseName .

И если вы хотите, чтобы задача «Техническая очистка» удаляла резервные копии с помощью «Удаление файлов в зависимости от возраста файла во время выполнения задачи», необходимо указать папку H: \ Backup \ DatabaseName, не H: \ Backup !!!

Это ошибка, которую я допустил, когда начал использовать SQL Server 2005 - я поместил одну и ту же папку в оба поля, Backup и Cleanup.

1 голос
/ 24 ноября 2008

Насколько я понимаю, вы можете включить только первый уровень подпапок. Я предполагаю, что у вас уже установлен этот флажок.

Ваши резервные копии глубже, чем один уровень?

Еще одна мысль: у вас есть один план обслуживания, который вы запускаете для удаления резервных копий нескольких баз данных? Причина, по которой я спрашиваю об этом, заключается в том, что способ, которым я мог бы понять, что вам придется это сделать, состоит в том, чтобы указать на папку, которая была на один уровень выше, что означает, что ваши «включенные подпапки первого уровня» не будут достаточно глубокими. *

Мой способ настройки заключается в том, что задача «Очистка после технического обслуживания» является частью процесса резервного копирования. Поэтому, как только резервное копирование завершено для конкретной базы данных, задача техобслуживания очистки выполняется для тех же файлов резервных копий базы данных. Это позволяет мне быть более точным в отношении каталога, поэтому я не сталкиваюсь со слишком глубокой структурой каталога. Поскольку у меня есть критерии, установленные так, как я хочу, элементы не удаляются, пока я не буду готов к их удалению в любом случае.

Тим

0 голосов
/ 24 ноября 2008

Другой проблемой может быть «рабочий процесс» плана обслуживания.

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

Возможная проблема № 1:

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

Возможная проблема № 2:

Вы определили рабочий процесс таким образом, чтобы задача очистки никогда не выполнялась. Если вы соединяете две задачи со стрелкой, вы можете щелкнуть правой кнопкой мыши по стрелке и указать, будет ли вторая задача выполняться всегда или только тогда, когда первая будет / не будет выполнена успешно (это изменит цвет стрелки, возможно красный /Зеленый, голубой). Может быть, резервное копирование работает, и тогда очистка никогда не запускается, потому что она будет запускаться только при сбое резервного копирования?

0 голосов
/ 24 ноября 2008

Убедитесь, что в вашем плане обслуживания нет ошибок, связанных с ним. Вы можете проверить журнал ошибок в области агента SQL Server в SQL Server Management Studio. Если во время планов обслуживания возникают ошибки, возможно, он завершает работу до того, как начинает удалять устаревшие резервные копии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...