Поделиться через


Обмен ролями между сервером-источником и сервером-получателем доставки журналов (SQL Server)

Область применения: SQL Server

После отработки отказа конфигурации доставки журналов SQL Server на сервер-получатель можно настроить базу данных-получатель для работы в качестве базы данных-источника. Затем базу данных-источник и базу данных-получатель можно менять местами по необходимости.

Выполнение исходного изменения роли

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

  1. Переход с базы данных-источника на базу данных-получатель вручную. Обязательно создайте резервную копию активного журнала транзакций сервера-источника с параметром NORECOVERY. Дополнительные сведения см. в разделе Выполнение отработки отказа на сервер-получатель доставки журналов (SQL Server).

  2. Отключите задание резервного копирования в доставке журналов на исходном сервере-источнике и задания копирования и восстановления на исходном сервере-получателе.

  3. В базе данных-получателе (база данных, которую вы хотите стать новой основной), настройте доставку журналов с помощью SQL Server Management Studio. Дополнительные сведения см. в разделе Настройка доставки журналов (SQL Server). Выполните следующие шаги:

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

    2. При добавлении базы данных-получателя в диалоговом окне Настройки базы данных-получателя введите имя исходной базы данных-источника в поле База данных-получатель

    3. В диалоговом окне Настройки базы данных-получателя выберите параметр Нет, база данных-получатель инициализирована.

  4. Если в предыдущей конфигурации доставки журналов был включен мониторинг доставки журнала, внесите изменения в настройки мониторинга доставки журнала для отслеживания новой конфигурации доставки журнала. Установка для параметра threshold_alert_enabled значения 1 указывает, что при превышении предела restore_threshold будет создано предупреждение. Выполните следующие команды, заменив database_name именем вашей базы данных:

    1. На новом сервере-источнике

      Выполните следующие инструкции Transac-SQL.

      -- Statement to execute on the new primary server  
      USE msdb  
      GO  
      EXEC master.dbo.sp_change_log_shipping_secondary_database @secondary_database = N'database_name', @threshold_alert_enabled = 1;  
      GO  
      
    2. На новом сервере-получателе

      Выполните следующие инструкции Transac-SQL.

      -- Statement to execute on the new secondary server  
      USE msdb  
      GO  
      EXEC master.dbo.sp_change_log_shipping_primary_database @database=N'database_name', @threshold_alert_enabled = 1;  
      GO  
      

Смена ролей

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

  1. Переведите базу данных-получатель в режим «в сети», выполните резервное копирование журнала транзакций на сервере-источнике с параметром NORECOVERY.

  2. Отключите задание резервного копирования в доставке журналов на исходном сервере-источнике и задания копирования и восстановления на исходном сервере-получателе.

  3. Включите задание резервного копирования в доставке журналов на исходном сервере-получателе (новом сервере-источнике) и задания копирования и восстановления на исходном сервере-источнике (новом сервере-получателе).

Внимание

Чтобы обеспечить согласованную работу пользователей и приложений при изменении базы данных-получателя на базу данных-источник, необходимо повторно создать часть или все метаданные базы данных, такие как имена входа и задания, в новом экземпляре сервера-источника. Дополнительные сведения см. в статье Управление метаданными при обеспечении доступности базы данных на другом экземпляре сервера (SQL Server).

Связанные задачи

См. также

Таблицы доставки журналов и хранимые процедуры