Настройка реплик базы данных для точек управления
Применимо к:System Center 2012 Configuration Manager, System Center 2012 Configuration Manager SP1, System Center 2012 Configuration Manager SP2, System Center 2012 R2 Configuration Manager, System Center 2012 R2 Configuration Manager SP1
Точки управления System Center 2012 Configuration Manager на первичном сайте можно настроить на использование реплики базы данных сайта. Точки управления на вторичных сайтах не поддерживают реплики базы данных.
На каждом первичном сайте можно настроить один или несколько компьютеров с SQL Server для размещения реплики базы данных. Одну и ту же реплику базы данных могут использовать несколько точек управления этого сайта. Если точка управления использует реплику базы данных, она запрашивает данные с компьютера SQL Server, где находится реплика базы данных. Поскольку запросы создаются к серверу реплики базы данных и заменяют прямые запросы к серверу базы данных сайта, при наличии большого числа клиентов, часто отправляющих запросы на политику клиентов, эта настройка позволяет сократить степень загрузки ЦП на сервере базы данных сайта.
При использовании реплики базы данных следует регулярно осуществлять мониторинг сервера базы данных сайта и каждого сервера реплики базы данных, чтобы убедиться в выполнении репликации между этими серверами и соответствии производительности сервера реплики базы данных необходимому уровню производительности сайта и клиента.
Следующие разделы содержат сведения о настройке реплик базы данных и управлении ими.
Конфигурации для использования реплики базы данных
Использование реплик базы данных
Удаление реплики базы данных
Удаление сервера сайта
Перемещение базы данных сервера сайта
Конфигурации для использования реплики базы данных
Для использование реплики базы данных требуются все перечисленные ниже конфигурации.
Для SQL Server на сервере базы данных сайта и на сервере реплики базы данных должен быть установлен компонент Репликация SQL Server.
База данных сайта должна опубликовать реплику базы данных.
Каждый удаленный компьютер SQL Server, на котором будет размещена реплика базы данных, должен иметь подписку на опубликованную реплику базы данных.
Каждую точку управления, которая будет использовать реплику базы данных, следует настроить для взаимодействия с сервером реплики базы данных и репликой базы данных.
Каждый компьютер SQL Server, на котором будет размещена реплика базы данных, должен иметь самозаверяющий сертификат для точек управления на удаленных компьютерах, необходимый для взаимодействия с сервером реплики базы данных.
Для параметра Max Text Repl Size экземпляра SQL Server, используемого для базы данных сайта и каждой реплики, следует указать значение "2 ГБ". Пример того, как выполнить эту настройку в SQL Server 2012, см. в разделе Configure the max text repl size Server Configuration Option (Настройка параметра конфигурации сервера "max text repl size").
Чтобы настроить реплику базы данных, следует выполнить процедуры, указанные в следующих разделах.
Настройка сервера базы данных сайта для публикации реплики базы данных
Настройка сервера реплики базы данных
Настройка точек управления для использования реплики базы данных
Настройка самозаверяющего сертификата для сервера реплики базы данных
Начиная с Configuration Manager с пакетом обновления 1 (SP1), необходимо также выполнить процедуру, описанную в следующем разделе:
- Настройка SQL Server Service Broker для сервера реплики базы данных
Настройка сервера базы данных сайта для публикации реплики базы данных
Следующая процедура используется в качестве примера настройки сервера базы данных сайта на компьютере Windows Server 2008 R2 для публикации реплики базы данных. При наличии другой версии операционной системы обратитесь к документации по имеющейся операционной системе и соответствующим образом измените действия в этой процедуре.
Настройка сервера базы данных сайта
-
На сервере базы данных сайта задайте автоматический запуск агента SQL Server.
-
На сервере базы данных сайта создайте локальную группу пользователей с именем ConfigMgr_MPReplicaAccess. Чтобы включить синхронизацию серверов реплики базы данных с опубликованной репликой базы данных, в эту группу необходимо добавить учетную запись компьютера для каждого сервера реплики базы данных, используемого на этом сайте.
-
На сервере базы данных сайта настройте общий файловый ресурс с именем ConfigMgr_MPReplica.
-
Добавьте следующие разрешения для общего ресурса ConfigMgr_MPReplica:
Примечание Если агент SQL Server использует учетную запись, отличную от учетной записи локальной системы, замените SYSTEM именем учетной записи из следующего списка.
- **Разрешения для общего ресурса**. - SYSTEM: **Запись** - ConfigMgr\_MPReplicaAccess: **Чтение**
- **Разрешения NTFS**. - SYSTEM: **Полный доступ** - ConfigMgr\_MPReplicaAccess: **Чтение**, **Чтение и выполнение**, **Просмотр содержимого каталога**
-
С помощью SQL Server Management Studio подключитесь к базе данных сайта и выполните следующую хранимую процедуру как запрос: spCreateMPReplicaPublication.
После выполнения хранимой процедуры сервер базы данных сайта будет настроен для публикации реплики базы данных.
Настройка сервера реплики базы данных
Сервер реплики базы данных — это компьютер, на котором выполняется SQL Server и на котором размещена реплика базы данных сайта, используемая точками управления. Сервер реплики базы данных по фиксированному расписанию синхронизирует свою копию базы данных с репликой базы данных, опубликованной сервером базы данных сайта.
Сервер реплики базы данных должен соответствовать тем же требованиям, что и сервер базы данных сайта. Однако выпуск или версия SQL Server на сервере реплики базы данных может отличаться от выпуска или версии, запущенной на сервере базы данных сайта. Сведения о поддерживаемых версиях SQL Server см. в разделе Конфигурации для базы данных сайта SQL Server статьи Поддерживаемые конфигурации для диспетчера конфигурации.
Важно |
---|
Служба SQL Server на компьютере, на котором размещается реплика база данных, должна выполняться с системной учетной записью. |
Следующая процедура используется в качестве примера настройки сервера реплики базы данных на компьютере Windows Server 2008 R2. При наличии другой версии операционной системы обратитесь к документации по имеющейся операционной системе и соответствующим образом измените действия в этой процедуре.
Настройка сервера реплики базы данных
-
На сервере реплики базы данных задайте автоматический запуск агента SQL Server.
-
На сервере реплики базы данных с помощью SQL Server Management Studio подключитесь к локальному серверу, найдите папку Репликация, щелкните "Локальные подписки" и выберите Создать подписки, чтобы запустить мастер создания подписки.
На странице Публикация в списке Издатель выберите Найти издатель SQL Server, введите имя сервера базы данных сайта, а затем нажмите кнопку Подключить.
Выберите ConfigMgr_MPReplica, а затем нажмите кнопку Далее.
На странице Расположение агента распространителя выберите параметр Выполнять каждый агент на своем подписчике (подписки по запросу), а затем нажмите кнопку Далее.
На странице Подписчики выполните одно из следующих действий.
На сервере реплики базы данных выберите существующую базу данных, которую будет использовать реплика базы данных, а затем нажмите кнопку ОК.
Чтобы создать новую базу данных для реплики базы данных, щелкните Создать базу данных. На странице Создание базы данных укажите имя базы данных, а затем нажмите кнопку ОК.
Чтобы продолжить, нажмите кнопку Далее.
На странице Безопасность агента распространителя в строке "Соединение с подписчиком" диалогового окна нажмите кнопку свойств (.…), а затем настройте параметры безопасности для соединения.
Совет Кнопка свойств, (….), находится в четвертом столбце окна отображения.
Параметры безопасности.
Настройте учетную запись, используемую для запуска процесса агента распространителя (учетную запись процесса).
Если агент SQL Server выполняется как локальная система, выберите параметр Выполнять с учетной записью службы "SQL Server, агент" (с точки зрения безопасности это не лучшее решение).
Если агент SQL Server выполняется под другой учетной записью, выберите параметр Использовать следующую учетную запись Windows, а затем настройте эту учетную запись. Можно указать учетную запись Windows или учетную запись SQL Server.
Важно Учетной записи, которая используется для запуска агента распространителя, необходимо предоставить разрешения к издателю как "Подписка по запросу". Сведения о настройке этих разрешений см. в статье Безопасность агента распространителя в библиотеке SQL Server TechNet.
Параметру Соединиться с распространителем задайте значение Путем олицетворения учетной записи процесса.
Параметру Соединиться с подписчиком задайте значение Путем олицетворения учетной записи процесса.
После настройки параметров безопасности подключения нажмите кнопку ОК, чтобы их сохранить, а затем нажмите кнопку Далее.
На странице Расписание синхронизации в списке Расписание агента выберите пункт Задать расписание, а затем настройте параметр Создание расписания задания. Для периодичности выполнения выберите значение Ежедневно, для повтора — каждые 5 минут, а для продолжительности — Нет даты окончания. Нажмите кнопку Далее, чтобы сохранить расписание, а затем нажмите кнопку Далее еще раз.
На странице Действия мастера установите флажок Создать подписку(-и) и нажмите кнопку Далее.
На странице Завершение работы мастера нажмите кнопку Готово, а затем нажмите кнопку Закрыть, чтобы завершить работу мастера.
-
Просмотрите состояние синхронизации, чтобы убедиться в успешной синхронизации подписки.
- На компьютере подписчика выполните следующие действия. - В **SQL Server Management Studio** подключитесь к серверу реплики базы данных и разверните узел **Репликация**. - Разверните узел **Локальные подписки**, правой кнопкой мыши щелкните подписку на публикацию базы данных сайта, а затем в контекстном меню выберите пункт **Просмотр состояния синхронизации**. - На компьютере издателя выполните следующие действия. - В **SQL Server Management Studio**, подключитесь к компьютеру базы данных сайта, правой кнопкой щелкните папку **Репликация**, а затем в контекстном меню выберите команду **Запустить монитор репликации**.
-
Чтобы включить интеграцию среды CLR для реплики базы данных, подключитесь к реплике базы данных на сервере реплики базы данных с помощью SQL Server Management Studio и выполните следующую хранимую процедуру как запрос: exec sp_configure 'clr enabled', 1; RECONFIGURE WITH OVERRIDE.
-
Для каждой точки управления, которая использует сервер реплики базы данных, добавьте учетную запись компьютера точек управления в локальную группу Администраторы на этом сервере реплики базы данных.
Совет Выполнять это действие для точки управления, установленной на сервере реплики базы данных, необязательно.
Теперь точки управления могут использовать реплику базы данных.
Настройка точек управления для использования реплики базы данных
Во время установки роли точки управления точку управления на первичном сайте можно настроить для использования реплики базы данных. Или можно перенастроить существующую точку управления.
Используйте следующие сведения, чтобы настроить точку управления для использования реплики базы данных.
Настройка новой точки управления В мастере, используемом для установки точки управления, на странице База данных точки управления выберите параметр Использовать реплику базы данных и укажите полное доменное имя компьютера, на котором размещена реплика базы данных. Затем для параметра Имя базы данных сайта Configuration Manager укажите имя базы данных для реплики базы данных на этом компьютере.
Настройка ранее установленной точки управления Откройте станицу свойств точки управления, перейдите на вкладку База данных точки управления, выберите параметр Использовать реплику базы данных, а затем укажите полное доменное имя компьютера, на котором размещена реплика базы данных. Затем для параметра Имя базы данных сайта Configuration Manager укажите имя базы данных для реплики базы данных на этом компьютере.
Для каждой точки управления, использующей реплику базы данных, необходимо вручную добавить учетную запись компьютера сервера точки управления в роль db_datareader реплики базы данных.
Кроме настройки точки управления для использования сервера реплики базы данных в ней необходимо включить параметр Проверка подлинности Windows в IIS. Для этого выполните следующие действия.
Откройте диспетчер служб IIS.
Выберите веб-сайт, используемый точкой управления, и откройте компонент Проверка подлинности.
Задайте параметру Проверка подлинности Windows значение Включено, а затем закройте диспетчер служб IIS.
Настройка самозаверяющего сертификата для сервера реплики базы данных
На сервере реплики базы данных необходимо создать самозаверяющий сертификат и сделать его доступным для каждой точки управления, которая будет использовать этот сервер реплики базы данных.
Точка управления, установленная на сервере реплики базы данных, получит доступ к сертификату автоматически. Чтобы сертификат был доступен и для удаленных точек управления, его следует экспортировать, а затем добавить в хранилище сертификатов "Доверенные лица" в удаленной точке управления.
Следующие процедуры используются в качестве примера настройки самозаверяющего сертификата на сервере реплики базы данных для компьютера Windows Server 2008 R2. При наличии другой версии операционной системы обратитесь к документации по имеющейся операционной системе и соответствующим образом измените действия в этих процедурах.
Настройка самозаверяющего сертификата для сервера реплики базы данных
-
На сервере реплики базы данных откройте командную строку PowerShell с правами администратора, а затем запустите следующую команду: set-executionpolicy UnRestricted.
-
Скопируйте следующий сценарий PowerShell и сохраните его как файл с именем CreateMPReplicaCert.ps1. Поместите копию файла в корневую папку системного раздела сервера реплики базы данных.
# 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 needs the thumbprint in lower case foreach($char in $certHashCharArray) { [System.String]$myString = $char; $certThumbprint = $certThumbprint + $myString.ToLower(); } # Configure SQL 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 service Restart-Service $SQLServiceName -Force
-
На сервере реплики базы данных выполните следующую команду, которая применяется к конфигурации SQL Server.
- Выполните следующие действия для заданного по умолчанию экземпляра SQL Server. Правой кнопкой мыши щелкните файл **CreateMPReplicaCert.ps1**, а затем в контекстном меню выберите команду **Выполнить с помощью PowerShell**. Во время выполнения сценарий создает самозаверяющий сертификат и настраивает SQL Server для его использования. - Выполните следующие действия для именованного экземпляра SQL Server. С помощью PowerShell выполните команду **%path%\\CreateMPReplicaCert.ps1 xxxxxx**, где **xxxxxx** является именем экземпляра SQL Server. - После завершения сценария убедитесь, что агент SQL Server запущен. Если это не так, перезапустите агент SQL Server.
Настройка удаленных точек управления для использования самозаверяющего сертификата сервера реплики базы данных
-
На сервере реплики базы данных выполните следующие действия по экспорту самозаверяющего сертификата сервера.
Нажмите кнопку Пуск, выберите пункт Выполнить и введите mmc.exe. В пустой консоли щелкните Файл, а затем выберите команду Добавить или удалить оснастку.
В диалоговом окне Добавление или удаление оснасток выберите Сертификаты из списка Доступные оснастки и нажмите кнопку Добавить.
В диалоговом окне Оснастка диспетчера сертификатов выберите пункт Учетная запись компьютера и нажмите кнопку Далее.
В диалоговом окне Выбор компьютера выберите Локальный компьютер: (компьютер, на котором запущена эта консоль) и нажмите кнопку Готово.
В диалоговом окне Добавление или удаление оснасток нажмите кнопку ОК.
В консоли разверните узел Сертификаты (локальный компьютер), затем разверните узел Личные и выберите Сертификаты.
Правой кнопкой мыши щелкните сертификат с понятным именем идентификационного сертификата SQL Server Configuration Manager, в контекстном меню выберите Все задачи, а затем — Экспорт.
Завершите работу Мастера экспорта сертификатов, оставив параметры по умолчанию, и сохраните сертификат с расширением файла .cer.
-
На компьютере точки управления выполните следующие действия по добавлению самозаверяющего сертификата сервера реплики базы данных в хранилище сертификатов "Доверенные лица" в точке управления.
Повторите предыдущие шаги с 1.a по 1.e, чтобы настроить оснастку MMC Сертификат на компьютере точки управления.
В консоли разверните узел Сертификаты (Локальный компьютера), разверните узел Доверенные лица, щелкните правой кнопкой мыши пункт Сертификаты, выберите Все задачи, после чего выберите Импортировать, чтобы открыть Мастер импорта сертификатов.
На странице Файл для импорта выберите сертификат, сохраненный в шаге 1.h, после чего нажмите кнопку Далее.
На странице Хранилище сертификатов выберите Разместить все сертификаты в следующем хранилище, установив для параметра Хранилище сертификатов значение Доверенные лица и нажмите кнпоку Далее.
Нажмите кнопку Готово, чтобы закрыть мастер и завершить настройку сертификата на точке управления.
Настройка SQL Server Service Broker для сервера реплики базы данных
Для System Center 2012 Configuration Manager с пакетом обновления 1 (SP1) и более поздних версий:
Для поддержки клиентских уведомлений с репликой базы данных для точки управления необходимо настроить соединение между сервером базы данных сайта и сервером реплики базы данных для SQL Server Service Broker. Для этого потребуется настроить в каждой базе данных сведения о другой базе данных и обменять сертификаты между двумя базами данных для защиты соединения.
Примечание |
---|
Перед использованием следующей процедуры сервер реплики базы данных должен успешно завершить процесс первоначальной синхронизации с сервером базы данных сайта. |
Следующая процедура не изменяет порт Service Broker, настроенный в SQL Server для сервера базы данных сайта или сервера реплики базы данных. Напротив, она настраивает каждую базу данных для связи с другой базой данных, используя правильный порт Service Broker.
Используйте описанную ниже процедуру, чтобы настроить Service Broker для сервера базы данных сайта и сервера реплики базы данных.
Настройка Service Broker для реплики базы данных
-
Используйте SQL Server Management Studio для подключения к серверу реплики базы данных, а затем выполните следующий запрос, чтобы включить Service Broker на сервере реплики базы данных: ALTER DATABASE <имя_базы_данных_реплики> SET ENABLE_BROKER, HONOR_BROKER_PRIORITY ON WITH ROLLBACK IMMEDIATE
-
Далее на сервере реплики базы данных настройте Service Broker для уведомления клиентов и экспорта сертификата Service Broker. Чтобы сделать это, запустите хранимую процедуру SQL Server, которая настраивает Service Broker и экспортирует сертификат в составе единой операции. При запуске хранимой процедуры необходимо указать полное доменное имя сервера реплики базы данных, имя базы данных реплики базы данных и расположение для экспорта файла сертификата.
Выполните следующий запрос, чтобы настроить нужные сведения на сервере реплики базы данных и экспортировать сертификат для сервера реплики базы данных: EXEC sp_BgbConfigSSBForReplicaDB '<полное_доменное_имя_SQL_Server_реплики>', '<имя_базы_данных_реплики>', '<путь_к_резервной_копии_файла_сертификата>'
Примечание Если сервер реплики базы данных не находится на экземпляре SQL Server по умолчанию, для этого шага необходимо указать имя экземпляра в дополнение к имени базы данных реплики. Для этого замените <имя_базы_данных_реплики> на <имя_экземпляра\имя_базы_данных_реплики>.
После экспорта сертификата с сервера реплики базы данных поместите копию сертификата на сервер базы данных первичного сайта.
-
Используйте SQL Server Management Studio для подключения к базе данных первичного сайта. После подключения к базе данных первичного сайта выполните запрос для импорта сертификата и укажите порт Service Broker, используемый на сервере реплики базы данных, полное доменное имя сервера реплики базы данных и имя базы данных реплики базы данных. При этом для базы данных первичного сайта настраивается использование Service Broker для связи с базой данных на сервере реплики базы данных.
Выполните следующий запрос, чтобы импортировать сертификат с сервера реплики базы данных и задать требуемые сведения: EXEC sp_BgbConfigSSBForRemoteService 'REPLICA', '<порт_SQL_Service_Broker>', '<путь_к_файлу_сертификата>', '<полное_доменное_имя_SQL_Server_реплики>', '<имя_базы_данных_реплики>'
Примечание Если сервер реплики базы данных не находится на экземпляре SQL Server по умолчанию, для этого шага необходимо указать имя экземпляра в дополнение к имени базы данных реплики. Для этого замените <имя_базы_данных_реплики> на <имя_экземпляра\имя_базы_данных_реплики>.
-
Далее на сервере базы данных сайта выполните следующую команду, чтобы экспортировать сертификат для сервера базы данных сайта: EXEC sp_BgbCreateAndBackupSQLCert '<путь_к_файлу_резервной_копии_сертификата>'
После экспорта сертификата с сервера базы данных сайта поместите копию сертификата на сервер реплики базы данных.
-
Используйте SQL Server Management Studio для подключения к базе данных сервера реплики базы данных. После подключения к базе данных сервера реплики базы данных выполните запрос для импорта сертификата и укажите код первичного сайта, а также порт Service Broker, который используется на сервере базы данных сайта. При этом для базы данных реплики базы данных настраивается использование Service Broker для связи с базой данных первичного сайта.
Выполните следующий запрос для импорта сертификата с сервера базы данных сайта: EXEC sp_BgbConfigSSBForRemoteService '<код_сайта>', '<порт_SQL_Service_Broker>', '<путь_к_файлу_сертификата>'
Через несколько минут после завершения конфигурации базы данных сайта и базы данных реплики базы данных диспетчер уведомлений на первичном сайте настроит беседу Service Broker для клиентских уведомлений из базы данных первичного сайта в реплику базы данных.
Использование реплик базы данных
При использовании реплики базы данных на сайте следует руководствоваться сведениями в дальнейших разделах этой статьи, связанными с процессом удаления реплики базы данных, удаления сайта, использующего реплику базы данных, или перемещения базы данных сайта на новую установку SQL Server. При применении данных в следующих разделах для удаления публикаций используйте рекомендации для удаления репликации транзакций в версии SQL Server, используемой для реплики базы данных. Например, если используется SQL Server 2008 R2, см. Руководство. Удаление публикации (программирование репликации на Transact-SQL).
Примечание |
---|
После восстановления базы данных сайта, для которой были настроены реплики баз данных, перед использованием реплик необходимо заново настроить каждую реплику базы данных, создав публикации и подписки. |
Удаление реплики базы данных
При использовании реплики базы данных для точки управления может потребоваться удалить реплику базы данных на какое-то время, а затем заново настроить ее использование. Например, необходимо удалить реплики баз данных перед обновлением сайта Configuration Manager до нового пакета обновления. После завершения обновления сайта можно восстановить использование реплики базы данных.
Выполните следующие действия для удаления реплики базы данных.
В рабочей области Администрирование консоли Configuration Manager откройте раздел Конфигурация сайта, затем выберите пункт Серверы и роли системы сайта и в области сведений выберите сервер системы сайта, где размещена точка управления, использующая удаляемую реплику базы данных.
В области Системные роли сайта щелкните пункт Точка управления правой кнопкой мыши и выберите Свойства.
На вкладке База данных точки управления выберите команду Использовать базу данных сайта, чтобы настроить для точки управления использование базы данных сайта, а не ее реплики. Затем нажмите кнопку ОК, чтобы сохранить настройки.
Затем используйте SQL Server Management Studio для выполнения следующих задач.
Удалите публикацию для реплики базы данных с сервера базы данных сайта.
Удалите подписку для реплики базы данных с сервера базы данных сайта.
Удалите базу данных реплики с сервера.
Отключите публикацию и распространение на сервере базы данных сайта. Для отключения публикации и распространения щелкните правой кнопкой мыши папку "Репликация", а затем выберите команду Отключить публикацию и распространение.
После удаления публикации, подписки, базы данных реплики, а также выключения публикации на сервере базы данных сайта реплика базы данных удаляется.
Удаление сервера сайта
Перед удалением сайта, на котором опубликована реплика базы данных, используйте следующие действия для очистки публикации и всех подписок.
Удалите публикацию реплики базы данных из базы данных сервера сайта, используя SQL Server Management Studio.
Используйте SQL Server Management Studio, чтобы удалить подписку реплики базы данных с каждого удаленного сервера SQL Server, на котором размещена реплика базы данных для этого сайта.
Удаление сайта.
Перемещение базы данных сервера сайта
При перемещении базы данных сайта на новый компьютер выполните следующие действия.
Удалите публикацию реплики базы данных из базы данных сервера сайта, используя SQL Server Management Studio.
Удалите подписку на реплику базы данных с каждого сервера реплики базы данных для этого сайта, используя SQL Server Management Studio.
Перемещение базы данных на новый компьютер с SQL Server. Дополнительные сведения см. в разделе Изменение конфигурации базы данных сайта статьи Управление настройками сайта и иерархии.
Повторно создайте публикацию для реплики базы данных на сервере базы данных сайта. Дополнительные сведения см. в статье Настройка сервера базы данных сайта для публикации реплики базы данных.
Повторно создайте подписки для реплики базы данных на каждом сервере реплики базы данных. Дополнительные сведения см. в статье Настройка сервера реплики базы данных.