Реплики баз данных для точек управления для Configuration Manager

Относится к Configuration Manager (Current Branch)

Configuration Manager первичные сайты могут использовать реплика базы данных для уменьшения нагрузки ЦП на сервере базы данных сайта точками управления при обслуживании запросов от клиентов. Когда точка управления использует реплика базы данных, она запрашивает данные с SQL Server компьютера, на котором размещается база данных реплика, а не с сервера базы данных сайта.

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

О программе

  • Реплики — это частичная копия базы данных сайта, которая реплицируется в отдельный экземпляр SQL Server.

    • Первичные сайты поддерживают выделенные реплика базы данных для каждой точки управления на сайте.

    • Вторичные сайты не поддерживают реплики баз данных.

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

    • В SQL Server может размещаться несколько реплик баз данных для использования разными точками управления при условии, что каждая из них выполняется в отдельном экземпляре SQL Server.

  • Реплики синхронизируют копию базы данных сайта по фиксированному расписанию из данных, которые сервер базы данных сайта публикует для этой цели.

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

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

Предварительные требования

требования к SQL Server

  • К SQL Server, на котором размещается реплика базы данных, предъявляют те же требования, что и к серверу базы данных сайта. На сервере реплика не требуется запускать ту же версию или выпуск SQL Server, что и сервер базы данных сайта, при условии, что на нем используется поддерживаемая версия и выпуск SQL Server. Дополнительные сведения см. в разделе Поддержка SQL Server версий.

  • Служба SQL Server на компьютере, на котором размещается база данных реплика, должна работать от имени системной учетной записи.

  • На SQL Server, где размещается база данных сайта, и на котором размещается база данных реплика, должна быть установлена SQL Server репликация.

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

  • Настройте оба сервера SQL Server для поддержки максимального размера репозитория текста 2 ГБ. Дополнительные сведения и настройку этого параметра для SQL Server см. в разделе Настройка параметра конфигурации сервера max text repl size.

Самозаверяющий сертификат

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

  • Сертификат автоматически доступен точке управления, установленной на сервере базы данных реплика.

  • Чтобы сделать этот сертификат доступным для удаленных точек управления, сначала экспортируйте сертификат. Затем добавьте его в хранилище сертификатов доверенного Люди в удаленной точке управления.

Уведомление клиента

Чтобы обеспечить поддержку уведомлений клиента с помощью реплика базы данных для точки управления, настройте связь между сервером базы данных сайта и сервером реплика базы данных для SQL Server Service Broker:

  • Настройте для каждой базы данных сведения о другой базе данных.

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

Ограничения

  • При настройке сайта для публикации реплик базы данных используйте следующие процедуры вместо обычных рекомендаций:

  • Развертывания пользователей в Центре программного обеспечения не будут работать с точкой управления с помощью SQL Server реплика.

  • Обновления до Configuration Manager текущей ветви. Перед обновлением сайта с System Center 2012 Configuration Manager до Configuration Manager текущей ветви или обновление Configuration Manager от текущей ветви до последнего выпуска, отключите реплики базы данных для точек управления. После обновления сайта можно перенастроить реплики базы данных для точек управления.

  • Несколько реплик на одной SQL Server. Если вы настраиваете отдельные экземпляры базы данных реплика сервера для размещения нескольких реплик базы данных для точек управления, используйте измененный скрипт конфигурации. Как отмечалось на шаге 4 процесса настройки реплик базы данных, это действие предотвращает перезапись самозаверяющего сертификата, используемого ранее настроенными репликами базы данных на этом сервере.

Configure (Настроить)

Чтобы настроить реплика базы данных, необходимо выполнить следующие действия.

Шаг 1. Настройка сервера базы данных сайта для публикации реплика

Используйте следующую процедуру в качестве примера настройки сервера базы данных сайта для публикации реплика базы данных. Конкретные шаги могут отличаться в зависимости от версии Windows Server.

На сервере базы данных сайта выполните следующие действия.

  1. Настройте автоматический запуск агент SQL Server.

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

    Примечание.

    Для этой цели также можно создать группу доменов.

  3. Настройте общую папку с именем ConfigMgr_MPReplica.

  4. Добавьте следующие разрешения в общую папку ConfigMgr_MPReplica :

    Примечание.

    Если агент SQL Server использует учетную запись, отличающуюся от учетной записи локальной системы, замените SYSTEM именем этой учетной записи в следующем списке.

    • Разрешения общего доступа:

      • СИСТЕМА: изменение

      • ConfigMgr_MPReplicaAccess: чтение

    • Разрешения NTFS:

      • SYSTEM: полный доступ

      • ConfigMgr_MPReplicaAccess: чтение, чтение & выполнения и вывод списка содержимого папки

  5. Используйте SQL Server Management Studio, чтобы подключиться к базе данных сайта и выполнить следующую хранимую процедуру в качестве запроса:spCreateMPReplicaPublication

    Примечание.

    Если вы используете группу домена вместо локальной группы, измените эту инструкцию SQL на: EXEC spCreateMPReplicaPublication N'<DomainName>\ConfigMgr_MPReplicaAccess'

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

Шаг 2. Настройка сервера базы данных реплика

Используйте следующую процедуру в качестве примера настройки базы данных реплика сервере. Конкретные шаги могут отличаться в зависимости от версии Windows Server.

Выполните следующие действия на сервере базы данных реплика.

  1. Задайте для агент SQL Server значение автоматического запуска.

  2. Используйте SQL Server Management Studio для подключения к локальному серверу. Перейдите в папку Репликация , выберите Локальные подписки, а затем — Новые подписки. Это действие запускает мастер создания подписки.

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

    2. Выберите ConfigMgr_MPReplica, а затем нажмите кнопку Далее.

    3. На странице расположение агент распространения выберите Запустить каждый агент на подписчике (подписки по запросу) и нажмите кнопку Далее.

    4. На странице Подписчики выполните одно из следующих действий:

      • Выберите существующую базу данных из базы данных реплика сервере для реплика базы данных, а затем нажмите кнопку ОК.

      • Выберите Создать базу данных, чтобы создать базу данных для реплика базы данных. На странице Новая база данных укажите имя базы данных и нажмите кнопку ОК.

    5. Нажмите кнопку Далее, чтобы продолжить.

    6. На странице агент распространения Безопасность нажмите кнопку свойств (...) в строке Подключение подписчика диалогового окна. Затем настройте параметры безопасности для подключения.

      Совет

      Кнопка свойств (...) находится в четвертом столбце окна отображения.

    • Настройте учетную запись, в которой выполняется процесс агент распространения (учетная запись процесса).

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

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

      Важно!

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

    • Для параметра Подключиться к распространителю выберите По олицетворение учетной записи процесса.

    • Для параметра Подключиться к подписчику выберите По олицетворение учетной записи процесса.

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

    1. На странице Расписание синхронизации выберите Определить расписание, а затем настройте новое расписание задания. Задайте частоту ежедневно, повторяться каждые 5 минут, а для длительности — нет даты окончания. Нажмите кнопку Далее , чтобы сохранить расписание, а затем нажмите кнопку Далее еще раз.

    2. На странице Действия мастера включите параметр Создать подписки, а затем нажмите кнопку Далее.

    3. Завершите работу мастера.

  3. Сразу после завершения работы мастера создания подписки используйте SQL Server Management Studio для подключения к базе данных реплика серверной базы данных. Выполните следующий запрос, чтобы включить свойство базы данных TRUSTWORTHY: ALTER DATABASE <MP Replica Database Name> SET TRUSTWORTHY ON;

  4. Проверьте состояние синхронизации, чтобы убедиться, что подписка прошла успешно:

    • На компьютере подписчика:

      • В SQL Server Management Studio подключитесь к базе данных реплика сервере и разверните узел Репликация.

      • Разверните узел Локальные подписки, щелкните правой кнопкой мыши подписку на публикацию базы данных сайта и выберите Пункт Просмотреть состояние синхронизации.

    • На компьютере издателя:

      • В SQL Server Management Studio подключитесь к компьютеру базы данных сайта, щелкните правой кнопкой мыши папку Репликация и выберите Запуск монитора репликации.
  5. Чтобы включить интеграцию среды CLR для реплика базы данных, используйте SQL Server Management Studio для подключения к реплика базы данных на сервере базы данных реплика. Выполните следующую хранимую процедуру в качестве запроса: exec sp_configure 'clr enabled', 1; RECONFIGURE WITH OVERRIDE

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

    Совет

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

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

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

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

Используйте следующие сведения, чтобы настроить точку управления для использования базы данных реплика:

  • Чтобы настроить новую точку управления, выполните следующие действия.

    1. На странице База данных точек управления мастера установки точки управления выберите Использовать реплика базы данных.
    2. Укажите полное доменное имя компьютера, на котором размещается база данных реплика.
    3. В поле Имя базы данных сайта ConfigMgr укажите имя базы данных, реплика на этом компьютере.
  • Чтобы настроить ранее установленную точку управления, выполните следующие действия.

    1. Откройте страницу свойств точки управления и перейдите на вкладку База данных точек управления .
    2. Выберите Использовать реплика базы данных, а затем укажите полное доменное имя компьютера, на котором размещается база данных реплика.
    3. Затем в поле Имя базы данных сайта ConfigMgr укажите имя базы данных, реплика на этом компьютере.

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

Помимо настройки точки управления для использования базы данных реплика сервера, включите проверку подлинности Windows в IIS в точке управления:

  1. Откройте диспетчер служб IIS.

  2. Выберите веб-сайт, используемый точкой управления, и откройте аутентификацию.

  3. Установите для параметра Проверка подлинности Windowsзначение Включено, а затем закройте диспетчер служб IIS.

Шаг 4. Настройка самозаверяющего сертификата для сервера базы данных реплика

Используйте следующие процедуры в качестве примера настройки самозаверяющего сертификата на сервере базы данных реплика. Конкретные шаги могут отличаться в зависимости от версии Windows Server.

Настройка самозаверяющего сертификата для сервера базы данных реплика

  1. На сервере базы данных реплика откройте командную строку PowerShell с правами администратора, а затем выполните следующую команду:Set-ExecutionPolicy Unrestricted

  2. Скопируйте следующий сценарий PowerShell и сохраните его как файл с именем CreateMPReplicaCert.ps1. Поместите копию этого файла в корневую папку системного раздела базы данных реплика сервера.

    Важно!

    Если вы настраиваете несколько реплика базы данных на одном SQL Server, для каждого последующего реплика настройки используйте измененную версию этого скрипта для этой процедуры. Дополнительные сведения см. в разделе Дополнительный скрипт для дополнительных реплик базы данных на одном SQL Server.

    # Script for creating a self-signed certificate for the local machine and configuring SQL Server to use it.  
    
    Param($SQLInstance)  
    
    $ConfigMgrCertFriendlyName = "ConfigMgr SQL Server Identification Certificate"  
    
    # Get local computer name  
    $computerName = "$env:computername"  
    
    # Get the SQL Server name  
    #$key="HKLM:\SOFTWARE\Microsoft\SMS\MP"  
    #$value="SQL Server Name"  
    #$sqlServerName= (Get-ItemProperty $key).$value  
    #$dbValue="Database Name"  
    #$sqlInstance_DB_Name= (Get-ItemProperty $key).$dbValue  
    
    $sqlServerName = [System.Net.Dns]::GetHostByName("localhost").HostName   
    $sqlInstanceName = "MSSQLSERVER"  
    $SQLServiceName = "MSSQLSERVER"  
    
    if ($SQLInstance -ne $Null)  
    {  
        $sqlInstanceName = $SQLInstance  
        $SQLServiceName = "MSSQL$" + $SQLInstance  
    }  
    
    # Delete existing cert if one exists  
    function Get-Certificate($storename, $storelocation)  
    {   
        $store=new-object System.Security.Cryptography.X509Certificates.X509Store($storename,$storelocation)   
        $store.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)   
        $store.Certificates   
    }   
    
    $cert = Get-Certificate "My" "LocalMachine" | ?{$_.FriendlyName -eq $ConfigMgrCertFriendlyName}   
    if($cert -is [Object])  
    {  
        $store = new-object System.Security.Cryptography.X509Certificates.X509Store("My","LocalMachine")   
        $store.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)   
        $store.Remove($cert)  
        $store.Close()  
    
        # Remove this cert from Trusted People too...  
        $store = new-object System.Security.Cryptography.X509Certificates.X509Store("TrustedPeople","LocalMachine")   
        $store.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)   
        $store.Remove($cert)  
        $store.Close()      
    }  
    
    # Create the new cert  
    $name = new-object -com "X509Enrollment.CX500DistinguishedName.1"  
    $name.Encode("CN=" + $sqlServerName, 0)  
    
    $key = new-object -com "X509Enrollment.CX509PrivateKey.1"  
    $key.ProviderName = "Microsoft RSA SChannel Cryptographic Provider"  
    $key.KeySpec = 1  
    $key.Length = 1024  
    $key.SecurityDescriptor = "D:PAI(A;;0xd01f01ff;;;SY)(A;;0xd01f01ff;;;BA)(A;;0x80120089;;;NS)"  
    $key.MachineContext = 1  
    $key.Create()  
    
    $serverauthoid = new-object -com "X509Enrollment.CObjectId.1"  
    $serverauthoid.InitializeFromValue("1.3.6.1.5.5.7.3.1")  
    $ekuoids = new-object -com "X509Enrollment.CObjectIds.1"  
    $ekuoids.add($serverauthoid)  
    $ekuext = new-object -com "X509Enrollment.CX509ExtensionEnhancedKeyUsage.1"  
    $ekuext.InitializeEncode($ekuoids)  
    
    $cert = new-object -com "X509Enrollment.CX509CertificateRequestCertificate.1"  
    $cert.InitializeFromPrivateKey(2, $key, "")  
    $cert.Subject = $name  
    $cert.Issuer = $cert.Subject  
    $cert.NotBefore = get-date  
    $cert.NotAfter = $cert.NotBefore.AddDays(3650)  
    $cert.X509Extensions.Add($ekuext)  
    $cert.Encode()  
    
    $enrollment = new-object -com "X509Enrollment.CX509Enrollment.1"  
    $enrollment.InitializeFromRequest($cert)  
    $enrollment.CertificateFriendlyName = "ConfigMgr SQL Server Identification Certificate"  
    $certdata = $enrollment.CreateRequest(0x1)  
    $enrollment.InstallResponse(0x2, $certdata, 0x1, "")  
    
    # Add this cert to the trusted peoples store  
    [Byte[]]$bytes = [System.Convert]::FromBase64String($certdata)  
    
    $trustedPeople = new-object System.Security.Cryptography.X509certificates.X509Store "TrustedPeople", "LocalMachine"  
    $trustedPeople.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)  
    $trustedPeople.Add([Security.Cryptography.X509Certificates.X509Certificate2]$bytes)  
    $trustedPeople.Close()  
    
    # Get thumbprint from cert  
    $sha = new-object System.Security.Cryptography.SHA1CryptoServiceProvider  
    $certHash = $sha.ComputeHash($bytes)  
    $certHashCharArray = "";  
    $certThumbprint = "";  
    
    # Format the bytes into a hexadecimal string  
    foreach($byte in $certHash)  
    {  
        $temp = ($byte | % {"{0:x}" -f $_}) -join ""  
        $temp = ($temp | % {"{0,2}" -f $_})  
        $certHashCharArray = $certHashCharArray+ $temp;  
    }  
    $certHashCharArray = $certHashCharArray.Replace(' ', '0');  
    
    # SQL Server needs the thumbprint in lower case  
    foreach($char in $certHashCharArray)  
    {  
        [System.String]$myString = $char;  
        $certThumbprint = $certThumbprint + $myString.ToLower();  
    }  
    
    # Configure SQL Server to use this cert  
    $path = "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL"  
    $subKey = (Get-ItemProperty $path).$sqlInstanceName  
    $realPath = "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\" + $subKey + "\MSSQLServer\SuperSocketNetLib"  
    $certKeyName = "Certificate"  
    Set-ItemProperty -path $realPath -name $certKeyName -Type string -Value $certThumbprint  
    
    # restart SQL Server service  
    Restart-Service $SQLServiceName -Force  
    
  3. На сервере базы данных реплика выполните следующую команду, которая применяется к конфигурации SQL Server:

    • Для экземпляра SQL Server по умолчанию: введите следующую команду в сеансе PowerShell: .\CreateMPReplicaCert.ps1. При выполнении скрипта создается самозаверяющий сертификат и настраивается SQL Server для использования сертификата.

    • Для именованного экземпляра SQL Server используйте PowerShell, чтобы выполнить следующую команду:.\CreateMPReplicaCert.ps1 <SQL Server instance name>

    После завершения скрипта убедитесь, что агент SQL Server запущен. Если нет, перезапустите агент SQL Server.

Настройка точек удаленного управления для использования самозаверяющего сертификата базы данных реплика сервера

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

  1. Перейдите в меню Пуск , выберите Выполнить и введите mmc.exe. В пустой консоли выберите Файл, а затем — Добавить и удалить оснастку.

  2. В диалоговом окне Добавление и удаление оснастки выберите Сертификаты в списке Доступные оснастки, а затем нажмите кнопку Добавить.

  3. В диалоговом окне оснастки "Сертификат" выберите Учетная запись компьютера, а затем нажмите кнопку Далее.

  4. В диалоговом окне Выбор компьютера установите флажок Локальный компьютер: (компьютер, на котором запущена консоль), а затем нажмите кнопку Готово.

  5. В диалоговом окне Добавление и удаление оснастки нажмите кнопку ОК.

  6. В консоли разверните узел Сертификаты (локальный компьютер),Разверните узел Личный и выберите Сертификаты.

  7. Щелкните правой кнопкой мыши сертификат с понятным именем ConfigMgr SQL Server Идентификатор сертификата, выберите Все задачи, а затем выберите Экспорт.

  8. Завершите работу мастера экспорта сертификатов с параметрами по умолчанию. Сохраните сертификат с расширением CER-файла .

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

  1. Повторите предыдущие шаги, чтобы открыть оснастку MMC сертификата на компьютере точки управления.

  2. В консоли Сертификаты разверните узлы Сертификаты (локальный компьютер),Доверенные Люди, щелкните правой кнопкой мыши Сертификаты, выберите Все задачи, а затем — Импорт. Это действие запускает мастер импорта сертификатов.

  3. На странице Импортируемый файл выберите сохраненный сертификат и нажмите кнопку Далее.

  4. На странице Хранилище сертификатов выберите Поместить все сертификаты в следующее хранилище, а для параметра Хранилище сертификатов задано значение Доверенные Люди, а затем нажмите кнопку Далее.

  5. Нажмите кнопку Готово , чтобы закрыть мастер и завершить настройку сертификата в точке управления.

Шаг 5. Настройка компонента Service Broker SQL Server для сервера базы данных реплика

Чтобы обеспечить поддержку уведомлений клиента с реплика базы данных для точки управления, настройте обмен данными между сервером базы данных сайта и сервером реплика базы данных для компонента Service Broker SQL Server. Настройте каждую базу данных со сведениями о другой базе данных и обмен сертификатами между двумя базами данных для безопасного взаимодействия.

Примечание.

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

Следующая процедура не изменяет порт компонента Service Broker, настроенный в SQL Server для сервера базы данных сайта или сервера реплика базы данных. Эта процедура настраивает каждую базу данных для взаимодействия с другой базой данных с помощью правильного порта Компонента Service Broker.

Чтобы настроить компонент Service Broker для сервера базы данных сайта и сервера реплика базы данных, выполните следующую процедуру:

  1. Используйте SQL Server Management Studio для подключения к базе данных сервера реплика. Затем выполните следующий запрос, чтобы включить компонент Service Broker на сервере базы данных реплика:ALTER DATABASE <Replica Database Name> SET ENABLE_BROKER, HONOR_BROKER_PRIORITY ON WITH ROLLBACK IMMEDIATE

  2. На сервере базы данных реплика настройте компонент Service Broker для уведомления клиента и экспортируйте сертификат Компонента Service Broker. Запустите SQL Server хранимую процедуру, которая настраивает компонент Service Broker и экспортирует сертификат в виде одного действия. При выполнении хранимой процедуры укажите полное доменное имя базы данных реплика сервере, имя базы данных реплик базы данных и укажите расположение для экспорта файла сертификата.

    Выполните следующий запрос, чтобы настроить необходимые сведения на сервере базы данных реплика и экспортировать сертификат для сервера базы данных реплика:EXEC sp_BgbConfigSSBForReplicaDB '<Replica SQL Server FQDN>', '<Replica Database Name>', '<Certificate Backup File Path>'

    Примечание.

    Если сервер базы данных реплика не используется в экземпляре по умолчанию SQL Server, укажите имя экземпляра с именем реплика базы данных. В примере команды замените на <Replica Database Name><Instance name>\<Replica Database Name>.

    После экспорта сертификата из базы данных реплика сервера поместите копию сертификата на сервер базы данных первичного сайта.

  3. Используйте SQL Server Management Studio для подключения к базе данных первичного сайта. После подключения к базе данных-источнику сайтов выполните запрос для импорта сертификата и укажите порт компонента Service Broker, используемый на сервере базы данных реплика, полное доменное имя базы данных реплика сервере и имя базы данных реплик базы данных. Это действие настраивает базу данных-источник сайтов для использования компонента Service Broker для связи с базой данных базы данных реплика сервера.

    Выполните следующий запрос, чтобы импортировать сертификат из базы данных реплика сервере и указать необходимые сведения:EXEC sp_BgbConfigSSBForRemoteService 'REPLICA', '<SQL Service Broker Port>', '<Certificate File Path>', '<Replica SQL Server FQDN>', '<Replica Database Name>'

    Примечание.

    Если сервер базы данных реплика не используется в экземпляре по умолчанию SQL Server, укажите имя экземпляра с именем реплика базы данных. В примере команды замените на <Replica Database Name><Instance name>\<Replica Database Name>.

  4. На сервере базы данных сайта выполните следующую команду, чтобы экспортировать сертификат для сервера базы данных сайта: EXEC sp_BgbCreateAndBackupSQLCert '<Certificate Backup File Path>'

    После экспорта сертификата с сервера базы данных сайта поместите копию сертификата на сервер базы данных реплика.

  5. Используйте SQL Server Management Studio для подключения к базе данных сервера реплика. После подключения к базе данных сервера реплика выполните запрос на импорт сертификата и укажите код сайта первичного сайта и порт компонента Service Broker, используемый на сервере базы данных сайта. Это действие настраивает сервер базы данных реплика для обмена данными с базой данных первичного сайта с помощью компонента Service Broker.

    Выполните следующий запрос, чтобы импортировать сертификат с сервера базы данных сайта: EXEC sp_BgbConfigSSBForRemoteService '<Site Code>', '<SQL Service Broker Port>', '<Certificate File Path>'

Через несколько минут после завершения настройки базы данных сайта и базы данных реплика базы данных диспетчер уведомлений на первичном сайте настраивает беседу Service Broker для уведомления клиента из базы данных-источника сайта в базу данных реплика базы данных.

Дополнительный скрипт для других реплик базы данных на одном SQL Server

При использовании скрипта из шага 4 для настройки самозаверяющего сертификата для сервера базы данных реплика на SQL Server, у которого уже есть база данных, реплика вы планируете использовать, используйте измененную версию исходного скрипта. Следующие изменения не позволяют скрипту удалять существующий сертификат на сервере и создавать последующие сертификаты с уникальными понятными именами. Измените исходный скрипт следующим образом:

  • Закомментируйте каждую строку между записями # Delete existing cert if one exists скрипта и # Create the new cert. Добавьте знак фунта (#) в качестве первого символа каждой применимой строки.

  • Для каждой последующей базы данных реплика вы используете этот скрипт для настройки, обновите понятное имя сертификата. Измените строку $enrollment.CertificateFriendlyName = "ConfigMgr SQL Server Identification Certificate" и замените ConfigMgr SQL Server Identification Certificate новым именем. Например, ConfigMgr SQL Server Identification Certificate1.

Управление конфигурациями реплика базы данных

При использовании реплика базы данных на сайте используйте сведения из следующих разделов, чтобы дополнить процесс удаления базы данных реплика, удаления сайта, использующего базу данных реплика, или перемещения базы данных сайта в новую установку SQL Server. При удалении публикаций используйте руководство по удалению репликации транзакций для версии SQL Server, используемой для базы данных реплика. Дополнительные сведения см. в разделе Удаление публикации.

Примечание.

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

Удаление реплика базы данных

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

Чтобы удалить базу данных реплика, выполните следующие действия.

  1. В рабочей области Администрирование консоли Configuration Manager разверните узел Конфигурация сайта, а затем выберите Серверы и роли системы сайта. В области сведений выберите сервер системы сайта, на котором размещена точка управления, использующая базу данных, реплика которую вы будете удалять.

  2. На панели Роли системы сайта выберите роль Точка управления . На ленте на вкладке Роль сайта выберите Свойства.

  3. Перейдите на вкладку База данных точек управления. Выберите Использовать базу данных сайта, чтобы настроить точку управления для использования базы данных сайта вместо базы данных реплика. Нажмите кнопку ОК , чтобы сохранить конфигурацию.

  4. Используйте SQL Server Management Studio для выполнения следующих задач:

    • Удалите публикацию для реплика базы данных из базы данных сервера сайта.

    • Удалите подписку на реплика базы данных с сервера реплика базы данных.

    • Удалите базу данных реплика с сервера базы данных реплика.

    • Отключите публикацию и распространение на сервере базы данных сайта. Чтобы отключить публикацию и распространение, щелкните правой кнопкой мыши папку Репликация и выберите Отключить публикацию и распространение.

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

Удаление сервера сайта, который публикует базу данных реплика

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

  1. Используйте SQL Server Management Studio, чтобы удалить базу данных реплика публикацию из базы данных сервера сайта.

  2. Используйте SQL Server Management Studio, чтобы удалить подписку на базу данных реплика из каждого удаленного SQL Server, на котором размещается реплика базы данных для этого сайта.

  3. Удалите сайт.

Перемещение базы данных сервера сайта, которая публикует базу данных реплика

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

  1. Используйте SQL Server Management Studio, чтобы удалить публикацию для реплика базы данных из базы данных сервера сайта.

  2. Используйте SQL Server Management Studio, чтобы удалить подписку на реплика базы данных с каждого сервера базы данных реплика для этого сайта.

  3. Переместите базу данных на новый компьютер SQL Server. Дополнительные сведения см. в разделе Изменение конфигурации базы данных сайта.

  4. Повторно создайте публикацию для реплика базы данных на сервере базы данных сайта. Дополнительные сведения см. в разделе Шаг 1. Настройка сервера базы данных сайта для публикации реплика базы данных.

  5. Повторно создайте подписки для реплика базы данных на каждом сервере базы данных реплика. Дополнительные сведения см. в разделе Шаг 2. Настройка базы данных реплика сервере.