Настройка доставки журналов SQL Server 2008

Настройка доставки журналов SQL Server 2008

Я пытаюсь настроить доставку журналов с кластера из двух машин Windows Server 2008 R2 x64, на которых запущен SQL Server 2008 R2, на одну машину с той же ОС и базой данных. Настройка, кажется, проходит нормально (без ошибок), но в запланированное время я получаю следующую пару ошибок в журнале событий SQL Server основной машины:

BACKUP Не удалось выполнить команду BACKUP LOG MyDb. Проверьте журнал приложения резервного копирования на наличие подробных сообщений

Ошибка: 3041, уровень серьезности 16, состояние 1

Вопросы: 1. Где находится «журнал приложения резервного копирования»? 2. Как узнать, что такое ошибка 3041?

SQL Server и SQL Server Agent запущены на первичном и вторичном серверах под учетной записью домена. Я создал общий ресурс на вторичном сервере как \secondary\SqlLogShipData, предоставил полный контроль учетной записи домена и добавил два подкаталога: Backup и Destination.

При настройке доставки журналов я указал \secondary/SqlLogShipData\Backup в качестве сетевого пути к папке резервных копий, а для вторичной копии я указал \secondary\SqlLogShipData\Destination в качестве папки назначения для скопированных файлов.

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

В журнале событий SQL вторичного сервера соответствующих ошибок нет.

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

решение1

Настройка доставки журналов в кластере — довольно простая настройка. Я использовал ее много раз.

Прежде чем начать, обязательно удалите существующую настройку Log Shipping, поскольку она не работает. Удалите Secondary, а затем удалите Primary.

Предпосылки

Для начала давайте выполним некоторые предварительные условия.

  • Находится ли база данных в модели полного восстановления?
  • Была ли сделана ПОЛНАЯ резервная копия?
  • У вас есть задание по резервному копированию LOG? Если да, обязательно удалите эту базу данных из этого задания. Log Shipping будет заниматься резервным копированием LOG для вас.

Первичная настройка

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

Сначала попробуйте заставить работать основную систему доставки бревен.

Вернитесь в свойства базы данных и установите флажок «Включить как основную базу данных», а затем нажмите кнопкуНастройки резервного копированиякнопка.

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

На моем сервере это выглядит примерно так:

  • C:\Резервные копии SQL\LS
  • \МойСервер\LS

Разрешения для папки доставки журналов

Затем найдите эту папку в проводнике Windows, щелкните правой кнопкой мыши, выберите свойства и вкладку разрешения. Здесь вам нужно будет добавить учетную запись службы первичного агента SQL и убедиться, что у нее есть разрешения на чтение и запись для этой папки.

Далее выберите вкладку Sharing. Здесь вам нужно будет предоставить общий доступ к папке и убедиться, что учетная запись Secondary SQL Server Service имеет разрешения на чтение для общего доступа.

Тестирование резервных копий доставки журналов

Как только вы это сделаете, давайте протестируем ваши резервные копии доставки журналов. Посмотрите в заданиях SQL Agent, и вы должны увидеть что-то с именем LSBackup_YourDatabase.

Щелкните правой кнопкой мыши по заданию и запустите его. Любые ошибки, скорее всего, связаны с правами доступа к папкам и общим ресурсам. Опубликуйте подробности.

Не настраивайте вторичный компонент, пока эта часть не заработает.

Инициализируйте вторичный

После того, как задание резервного копирования доставки журналов будет выполнено несколько раз без ошибок, запустите задание ПОЛНОГО резервного копирования еще раз.

Скопируйте и восстановите ПОЛНУЮ резервную копию на вашем вторичном сервере. Обязательно используйте NORECOVERY.

Вторичная настройка

Вернитесь в свойства базы данных и раздел Log Shipping. В области Secondary Databases нажмите Add. Подключитесь к своему Secondary server.

На вкладке «Инициализация» выберите «Нет, вторичный диск инициализирован».

На вкладке копирования введите локальную папку на вторичном сервере, куда вы хотите копировать файлы резервной копии Log Shipping. Убедитесь, что учетная запись службы вторичного агента SQL имеет разрешения на чтение и запись в эту папку.

Тестирование заданий копирования и восстановления

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

После того, как задание Copy заработает, переходите к заданию Resore. Те же шаги тестирования.

Удачи!

решение2

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

Связанный контент