Я пытаюсь настроить доставку журналов из кластера из двух компьютеров 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 работают на первичном и вторичном серверах под учетной записью домена. Я создал общий ресурс на вторичном сервере как \ secondary \ SqlLogShipData, дал полный контроль учетной записи домена и добавил два подкаталога: Backup и Destination.
Когда я настроил доставку журналов, я указал \ secondary / SqlLogShipData \ Backup в качестве сетевого пути к папке резервного копирования, а для вторичного я указал \ secondary \ SqlLogShipData \ Destination в качестве папки назначения для скопированных файлов.
Я поместил резервную папку на вторичный, потому что первичный - это кластер, и я хочу, чтобы доставка журналов работала, когда один из узлов активен. Я также попытался указать каталог, который является локальным по отношению к основному, но это не имело значения.
В журнале событий sql вторичного сервера нет соответствующих ошибок.
Я предполагаю, что это проблема с разрешениями, но я не уверен, почему. Буду признателен за любую помощь, которую вы можете мне оказать.
Настройка доставки журналов в кластере - довольно простая установка. Я использовал это много раз.
Прежде чем мы начнем, обязательно удалите существующую настройку доставки журналов, поскольку она не работает. Удалите вторичный, а затем удалите первичный.
Предпосылки
Во-первых, давайте подготовим некоторые предварительные условия.
Первичная настройка
Хорошо, теперь давайте попробуем пройти через настройку доставки журналов.
Во-первых, просто попробуйте заставить работать Log Shipping Primary.
Вернитесь в свойства своей базы данных и установите флажок «Включить как основную базу данных», а затем щелкните значок Настройки резервного копирования кнопка.
Здесь вам нужно указать две вещи: сетевой путь к вашим резервным копиям журналов и локальный путь к ним.
На моем сервере это примерно так:
Разрешения для папки доставки журналов
Затем найдите эту папку в проводнике Windows, щелкните правой кнопкой мыши, выберите свойства и выберите вкладку «Разрешения». Здесь вам нужно будет добавить свою учетную запись службы основного агента SQL и убедиться, что у нее есть разрешения на чтение и запись в этой папке.
Затем выберите вкладку «Общий доступ». Здесь вам нужно будет предоставить общий доступ к папке и убедиться, что учетная запись службы Secondary SQL Server имеет разрешения на чтение для общего ресурса.
Тестирование резервных копий доставки журналов
Как только вы это сделаете, давайте протестируем ваши резервные копии доставки журналов. Посмотрите в SQL Agent Jobs, и вы должны увидеть что-то под названием LSBackup_YourDatabase.
Щелкните задание правой кнопкой мыши и запустите его. Любые ошибки, скорее всего, связаны с разрешениями для папок и общих ресурсов. Разместите подробности.
Не конфигурируйте вторичный, пока эта часть не заработает.
Инициализировать вторичный
Если задание резервного копирования доставки журналов выполняется несколько раз без ошибок, запустите задание ПОЛНОЕ резервное копирование еще раз.
Скопируйте и восстановите ПОЛНУЮ резервную копию на дополнительный сервер. Обязательно используйте NORECOVERY.
Вторичная настройка
Вернитесь в свойства базы данных и раздел Доставка журналов. В области «Дополнительные базы данных» нажмите «Добавить». Подключитесь к дополнительному серверу.
На вкладке «Инициализация» выберите «Нет, вторичный сервер инициализирован».
На вкладке копирования введите локальную папку на вторичном сервере, в которую вы хотите сохранять файлы резервных копий Log Shipping. Убедитесь, что учетная запись службы вторичного агента SQL имеет разрешения на чтение и запись в эту папку.
Тестирование заданий копирования и восстановления
Запустите задание копирования на вторичном сервере. Любые ошибки, скорее всего, связаны с папкой и ее разрешениями. Разместите подробности. Войдите в историю вакансий. Используйте встроенные отчеты о доставке журналов, чтобы узнать, насколько далеко они зашли.
Как только задание копирования заработает, перейдите к заданию Resore. Те же шаги тестирования.
Удачи!
Попробуйте создать дополнительный диск кластера для резервного копирования на случай, если возникнут проблемы с записью на локальный диск одного из узлов - так доставка журналов всегда должна работать. В противном случае создайте резервную копию и восстановите доставку журнала с другого отдельного удаленного сервера.