Repliche di database per i punti di gestione per Configuration Manager

Si applica a: Configuration Manager (Current Branch)

Configuration Manager siti primari possono usare una replica di database per ridurre il carico della CPU inserito nel server di database del sito dai punti di gestione mentre inviano richieste dai client. Quando un punto di gestione usa una replica di database, richiede i dati dal computer SQL Server che ospita la replica di database anziché dal server di database del sito.

Questa configurazione consente di ridurre i requisiti di elaborazione della CPU nel server di database del sito tramite l'offload di attività di elaborazione frequenti correlate ai client. Un esempio di attività di elaborazione frequenti per i client include siti in cui è presente un numero elevato di client che effettuano richieste frequenti per i criteri client.

Informazioni

  • Le repliche sono una copia parziale del database del sito che viene replicata in un'istanza separata di SQL Server.

    • I siti primari supportano una replica di database dedicata per ogni punto di gestione nel sito.

    • I siti secondari non supportano le repliche di database.

    • Una singola replica di database può essere usata da più di un punto di gestione dello stesso sito.

    • Un SQL Server può ospitare più repliche di database per l'uso da parte di punti di gestione diversi, purché ogni esecuzione venga eseguita in un'istanza separata di SQL Server.

  • Le repliche sincronizzano una copia del database del sito in base a una pianificazione fissa dai dati pubblicati a questo scopo dal server di database del sito.

  • È possibile configurare i punti di gestione per l'uso di una replica quando viene installata o in un secondo momento. Per un punto di gestione esistente, riconfigurarlo per usare la replica di database.

  • Monitorare regolarmente il server di database del sito e ogni server di replica di database per assicurarsi che venga eseguita la replica tra di essi. Assicurarsi che le prestazioni del server di replica di database siano sufficienti per le prestazioni del sito e del client necessarie.

Prerequisiti

requisiti di SQL Server

  • Il SQL Server che ospita la replica di database ha gli stessi requisiti del server di database del sito. Il server di replica non deve eseguire la stessa versione o edizione di SQL Server del server di database del sito, purché eservi una versione e un'edizione supportate di SQL Server. Per altre informazioni, vedere Supporto per le versioni SQL Server.

  • Il servizio SQL Server nel computer che ospita il database di replica deve essere eseguito come account di sistema.

  • Sia il SQL Server che ospita il database del sito che che ospita una replica di database devono avere installato SQL Server replica.

  • Il database del sito deve pubblicare la replica di database e ogni server di replica di database remoto deve sottoscrivere i dati pubblicati.

  • Configurare entrambi i server SQL per supportare una dimensione massima di 2 GB di repl di testo . Per altre informazioni e come configurare questa impostazione per SQL Server, vedere Configurare l'opzione di configurazione del server max text repl size.

Certificato autofirmato

Per configurare una replica di database, creare un certificato autofirmato nel server di replica di database. Rendere questo certificato disponibile per ogni punto di gestione che userà tale server di replica di database.

  • Il certificato è automaticamente disponibile per un punto di gestione installato nel server di replica di database.

  • Per rendere questo certificato disponibile per i punti di gestione remota, esportare prima il certificato. Aggiungerlo quindi all'archivio certificati trusted Persone nel punto di gestione remota.

Notifica dei client

Per supportare la notifica client con una replica di database per un punto di gestione, configurare la comunicazione tra il server di database del sito e il server di replica di database per l'SQL Server Service Broker:

  • Configurare ogni database con informazioni sull'altro database.

  • Scambiare i certificati tra i due database per la comunicazione sicura.

Limitazioni

  • Quando si configura il sito per la pubblicazione delle repliche di database, usare le procedure seguenti anziché le normali indicazioni:

  • Le distribuzioni degli utenti in Software Center non funzionano con un punto di gestione usando una replica SQL Server.

  • Aggiornamenti a Configuration Manager current branch: prima di aggiornare un sito, da System Center 2012 Configuration Manager a Configuration Manager current branch o aggiornando Configuration Manager current branch alla versione più recente, disabilitare le repliche di database per i punti di gestione. Dopo l'aggiornamento del sito, è possibile riconfigurare le repliche di database per i punti di gestione.

  • Più repliche in un singolo SQL Server: se si configurano istanze separate di un server di replica di database per ospitare più repliche di database per i punti di gestione, usare uno script di configurazione modificato. Come indicato nel passaggio 4 del processo di configurazione delle repliche di database, questa azione impedisce la sovrascrittura del certificato autofirmato in uso da repliche di database configurate in precedenza in tale server.

Configurazione

Per configurare una replica di database, sono necessari i passaggi seguenti:

Passaggio 1: Configurare il server di database del sito per pubblicare la replica di database

Utilizzare la procedura seguente come esempio di configurazione del server di database del sito per pubblicare la replica di database. I passaggi specifici possono variare a seconda della versione di Windows Server.

Seguire questa procedura nel server di database del sito:

  1. Impostare il SQL Server Agent per l'avvio automatico.

  2. Creare un gruppo di utenti locale con il nome ConfigMgr_MPReplicaAccess. Per ogni server di replica di database usato in questo sito, aggiungere il relativo account computer a questo gruppo. Questa azione consente a tali server di replica di database di eseguire la sincronizzazione con la replica di database pubblicata.

    Nota

    A questo scopo, è anche possibile creare un gruppo di dominio.

  3. Configurare una condivisione file con il nome ConfigMgr_MPReplica.

  4. Aggiungere le autorizzazioni seguenti alla condivisione ConfigMgr_MPReplica :

    Nota

    Se il SQL Server Agent usa un account diverso dall'account di sistema locale, sostituire SYSTEM con il nome dell'account nell'elenco seguente.

    • Autorizzazioni di condivisione:

      • SYSTEM: Modifica

      • ConfigMgr_MPReplicaAccess: Lettura

    • Autorizzazioni NTFS:

      • SYSTEM: Controllo completo

      • ConfigMgr_MPReplicaAccess: Lettura, Lettura & esecuzione ed Elenco del contenuto della cartella

  5. Usare SQL Server Management Studio per connettersi al database del sito ed eseguire la stored procedure seguente come query:spCreateMPReplicaPublication

    Nota

    Se si usa un gruppo di dominio anziché un gruppo locale, modificare questa istruzione SQL in: EXEC spCreateMPReplicaPublication N'<DomainName>\ConfigMgr_MPReplicaAccess'

Al termine della stored procedure, il server di database del sito è configurato per pubblicare la replica di database.

Passaggio 2: Configurare il server di replica di database

Utilizzare la procedura seguente come esempio di configurazione di un server di replica di database. I passaggi specifici possono variare a seconda della versione di Windows Server.

Seguire questa procedura nel server di replica di database:

  1. Impostare il SQL Server Agent sull'avvio automatico.

  2. Usare SQL Server Management Studio per connettersi al server locale. Passare alla cartella Replica , selezionare Sottoscrizioni locali e quindi selezionare Nuove sottoscrizioni. Questa azione avvia la Creazione guidata nuova sottoscrizione.

    1. Nella pagina Pubblicazione selezionare Trova SQL Server server di pubblicazione. Immettere il nome del server di database del sito e quindi selezionare Connetti.

    2. Selezionare ConfigMgr_MPReplica e quindi avanti.

    3. Nella pagina Percorso agente di distribuzione selezionare Esegui ogni agente nel sottoscrittore (sottoscrizioni pull) e quindi selezionare Avanti.

    4. Nella pagina Sottoscrittori eseguire una delle azioni seguenti:

      • Selezionare un database esistente dal server di replica di database da usare per la replica di database e quindi selezionare OK.

      • Selezionare Nuovo database per creare un nuovo database per la replica di database. Nella pagina Nuovo database specificare un nome di database e quindi selezionare OK.

    5. Selezionare Avanti per continuare.

    6. Nella pagina sicurezza agente di distribuzione selezionare il pulsante delle proprietà (...) nella riga Connessione sottoscrittore della finestra di dialogo. Configurare quindi le impostazioni di sicurezza per la connessione.

      Consiglio

      Il pulsante delle proprietà (...) si trova nella quarta colonna della casella di visualizzazione.

    • Configurare l'account che esegue il processo di agente di distribuzione (account di processo):

      • Se il SQL Server Agent viene eseguito come sistema locale, selezionare Esegui nell'account del servizio SQL Server Agent (procedura consigliata per la sicurezza).

      • Se il SQL Server Agent viene eseguito usando un account diverso, selezionare Esegui nell'account di Windows seguente e quindi configurare tale account. È possibile specificare un account di Windows o un account SQL Server.

      Importante

      Concedere all'account che esegue le autorizzazioni di agente di distribuzione al server di pubblicazione come sottoscrizione pull. Per altre informazioni sulla configurazione di queste autorizzazioni, vedere Sicurezza dell'agente di distribuzione.

    • Per Connetti al server di distribuzione selezionare Rappresentando l'account di processo.

    • Per Connetti al Sottoscrittore selezionare Rappresentando l'account del processo.

      Dopo aver configurato le impostazioni di sicurezza della connessione, selezionare OK per salvarle e quindi selezionare Avanti.

    1. Nella pagina Pianificazione sincronizzazione selezionare Definisci pianificazione e quindi configurare la pianificazione del nuovo processo. Impostare la frequenza in modo che si verifichi ogni giorno, ricorrenza ogni 5 minuti e la durata in modo che non abbia una data di fine. Selezionare Avanti per salvare la pianificazione e quindi selezionare di nuovo Avanti .

    2. Nella pagina Azioni guidate abilitare l'opzione Crea sottoscrizioni e quindi selezionare Avanti.

    3. Completare la procedura guidata.

  3. Subito dopo aver completato la Creazione guidata nuova sottoscrizione, usare SQL Server Management Studio per connettersi al database del server di replica di database. Eseguire la query seguente per abilitare la proprietà del database TRUSTWORTHY: ALTER DATABASE <MP Replica Database Name> SET TRUSTWORTHY ON;

  4. Esaminare lo stato della sincronizzazione per verificare che la sottoscrizione sia riuscita:

    • Nel computer sottoscrittore:

      • In SQL Server Management Studio connettersi al server di replica di database ed espandere Replica.

      • Espandere Sottoscrizioni locali, fare clic con il pulsante destro del mouse sulla sottoscrizione alla pubblicazione del database del sito e quindi scegliere Visualizza stato sincronizzazione.

    • Nel computer di pubblicazione:

      • In SQL Server Management Studio connettersi al computer del database del sito, fare clic con il pulsante destro del mouse sulla cartella Replica e quindi scegliere Avvia Monitoraggio replica.
  5. Per abilitare l'integrazione clr (Common Language Runtime) per la replica di database, usare SQL Server Management Studio per connettersi alla replica di database nel server di replica di database. Eseguire la stored procedure seguente come query: exec sp_configure 'clr enabled', 1; RECONFIGURE WITH OVERRIDE

  6. Per ogni punto di gestione che usa un server di replica di database, aggiungere tale account computer dei punti di gestione al gruppo Administrators locale in tale server di replica di database.

    Consiglio

    Questo passaggio non è necessario per un punto di gestione eseguito nel server di replica di database.

La replica di database è ora pronta per l'uso da parte di un punto di gestione.

Passaggio 3: Configurare i punti di gestione per l'uso della replica di database

È possibile configurare un punto di gestione in un sito primario per usare una replica di database quando si installa il ruolo del punto di gestione oppure è possibile riconfigurare un punto di gestione esistente per usare una replica di database.

Usare le informazioni seguenti per configurare un punto di gestione per l'uso di una replica di database:

  • Per configurare un nuovo punto di gestione:

    1. Nella pagina Database punto di gestione della procedura guidata per installare il punto di gestione selezionare Usa una replica di database.
    2. Specificare il nome di dominio completo del computer che ospita la replica di database.
    3. Per il nome del database del sito ConfigMgr, specificare il nome del database della replica di database in tale computer.
  • Per configurare un punto di gestione installato in precedenza:

    1. Aprire la pagina delle proprietà del punto di gestione e passare alla scheda Database punto di gestione .
    2. Selezionare Usa una replica di database e quindi specificare il nome di dominio completo del computer che ospita la replica di database.
    3. Per Nome database del sito ConfigMgr specificare quindi il nome del database della replica di database in tale computer.

Per ogni punto di gestione che usa una replica di database, aggiungere manualmente l'account computer del server del punto di gestione al ruolo db_datareader per la replica di database.

Oltre a configurare il punto di gestione per l'uso del server di replica di database, abilitare l'autenticazione di Windows in IIS nel punto di gestione:

  1. Aprire Gestione Internet Information Services (IIS).

  2. Selezionare il sito Web usato dal punto di gestione e aprire Autenticazione.

  3. Impostare Autenticazione di Windows su Abilitato e quindi chiudere Gestione Internet Information Services (IIS).

Passaggio 4- Configurare un certificato autofirmato per il server di replica di database

Usare le procedure seguenti come esempio di configurazione del certificato autofirmato nel server di replica di database. I passaggi specifici possono variare a seconda della versione di Windows Server.

Configurare un certificato autofirmato per il server di replica di database

  1. Nel server di replica di database aprire un prompt dei comandi di PowerShell con privilegi amministrativi e quindi eseguire il comando seguente: Set-ExecutionPolicy Unrestricted

  2. Copiare lo script di PowerShell seguente e salvarlo come file con il nome CreateMPReplicaCert.ps1. Inserire una copia di questo file nella cartella radice della partizione di sistema del server di replica di database.

    Importante

    Se si configurano più repliche di database in un singolo SQL Server, per ogni replica successiva configurata, usare una versione modificata di questo script per questa procedura. Per altre informazioni, vedere Script supplementare per altre repliche di database in un singolo 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. Nel server di replica di database eseguire il comando seguente che si applica alla configurazione del SQL Server:

    • Per un'istanza predefinita di SQL Server: immettere il comando seguente nella sessione di PowerShell: .\CreateMPReplicaCert.ps1. Quando viene eseguito, lo script crea il certificato autofirmato e configura SQL Server per l'uso del certificato.

    • Per un'istanza denominata di SQL Server: usare PowerShell per eseguire il comando seguente:.\CreateMPReplicaCert.ps1 <SQL Server instance name>

    Al termine dello script, verificare che il SQL Server Agent sia in esecuzione. In caso contrario, riavviare il SQL Server Agent.

Configurare i punti di gestione remota per l'uso del certificato autofirmato del server di replica di database

Eseguire la procedura seguente nel server di replica di database per esportare il certificato autofirma del server:

  1. Passare al menu Start , selezionare Esegui e digitare mmc.exe. Nella console vuota selezionare File e quindi selezionare Aggiungi/Rimuovi snap-in.

  2. Nella finestra di dialogo Aggiungi o rimuovi snap-in selezionare Certificati dall'elenco Snap-in disponibili e quindi selezionare Aggiungi.

  3. Nella finestra di dialogo Snap-in Certificato selezionare Account computer e quindi selezionare Avanti.

  4. Nella finestra di dialogo Seleziona computer verificare che computer locale: (il computer in cui è in esecuzione la console) sia selezionato e quindi selezionare Fine.

  5. Nella finestra di dialogo Aggiungi o rimuovi snap-in selezionare OK.

  6. Nella console espandere Certificati (computer locale), espandere Personale e selezionare Certificati.

  7. Fare clic con il pulsante destro del mouse sul certificato con il nome descrittivo ConfigMgr SQL Server Identification Certificate(Certificato di identificazione), selezionare Tutte le attività e quindi scegliere Esporta.

  8. Completare l'Esportazione guidata certificati con le opzioni predefinite. Salvare il certificato con l'estensione cer.

Eseguire la procedura seguente nel server del punto di gestione per aggiungere il certificato autofirma per il server di replica di database all'archivio certificati trusted Persone:

  1. Ripetere i passaggi precedenti per aprire lo snap-in Certificato MMC nel computer del punto di gestione.

  2. Nella console Certificati espandere Certificati (computer locale), espandere Persone attendibili, fare clic con il pulsante destro del mouse su Certificati, selezionare Tutte le attività e quindi selezionare Importa. Questa azione avvia l'Importazione guidata certificati.

  3. Nella pagina File da importare selezionare il certificato salvato e quindi selezionare Avanti.

  4. Nella pagina Archivio certificati selezionare Inserisci tutti i certificati nell'archivio seguente, con l'archivio certificati impostato su Trusted Persone e quindi selezionare Avanti.

  5. Selezionare Fine per chiudere la procedura guidata e completare la configurazione del certificato nel punto di gestione.

Passaggio 5: Configurare l'SQL Server Service Broker per il server di replica di database

Per supportare la notifica client con una replica di database per un punto di gestione, configurare la comunicazione tra il server di database del sito e il server di replica di database per l'SQL Server Service Broker. Configurare ogni database con informazioni sull'altro database e scambiare i certificati tra i due database per la comunicazione sicura.

Nota

Prima di poter utilizzare la procedura seguente, il server di replica di database deve completare correttamente la sincronizzazione iniziale con il server di database del sito.

La procedura seguente non modifica la porta di Service Broker configurata in SQL Server per il server di database del sito o il server di replica del database. Questa procedura configura ogni database per comunicare con l'altro database usando la porta di Service Broker corretta.

Usare la procedura seguente per configurare Service Broker per il server di database del sito e il server di replica di database:

  1. Usare SQL Server Management Studio per connettersi al database del server di replica. Eseguire quindi la query seguente per abilitare Service Broker nel server di replica di database: ALTER DATABASE <Replica Database Name> SET ENABLE_BROKER, HONOR_BROKER_PRIORITY ON WITH ROLLBACK IMMEDIATE

  2. Nel server di replica di database configurare Service Broker per la notifica client ed esportare il certificato di Service Broker. Eseguire una stored procedure SQL Server che configura Service Broker ed esporta il certificato come singola azione. Quando si esegue la stored procedure, specificare il nome di dominio completo del server di replica di database, il nome del database delle repliche di database e specificare un percorso per l'esportazione del file di certificato.

    Eseguire la query seguente per configurare i dettagli necessari nel server di replica di database e per esportare il certificato per il server di replica di database: EXEC sp_BgbConfigSSBForReplicaDB '<Replica SQL Server FQDN>', '<Replica Database Name>', '<Certificate Backup File Path>'

    Nota

    Quando il server di replica di database non è nell'istanza predefinita di SQL Server, specificare anche il nome dell'istanza con il nome del database di replica. Nel comando di esempio sostituire <Replica Database Name> con <Instance name>\<Replica Database Name>.

    Dopo aver esportato il certificato dal server di replica del database, inserire una copia del certificato nel server di database del sito primario.

  3. Usare SQL Server Management Studio per connettersi al database del sito primario. Dopo la connessione al database dei siti primari, eseguire una query per importare il certificato e specificare la porta di Service Broker in uso nel server di replica di database, il nome di dominio completo del server di replica di database e il nome del database delle repliche di database. Questa azione configura il database dei siti primari in modo che usi Service Broker per comunicare con il database del server di replica di database.

    Eseguire la query seguente per importare il certificato dal server di replica di database e specificare i dettagli necessari: EXEC sp_BgbConfigSSBForRemoteService 'REPLICA', '<SQL Service Broker Port>', '<Certificate File Path>', '<Replica SQL Server FQDN>', '<Replica Database Name>'

    Nota

    Quando il server di replica di database non è nell'istanza predefinita di SQL Server, specificare anche il nome dell'istanza con il nome del database di replica. Nel comando di esempio sostituire <Replica Database Name> con <Instance name>\<Replica Database Name>.

  4. Nel server di database del sito eseguire il comando seguente per esportare il certificato per il server di database del sito: EXEC sp_BgbCreateAndBackupSQLCert '<Certificate Backup File Path>'

    Dopo aver esportato il certificato dal server di database del sito, inserire una copia del certificato nel server di replica del database.

  5. Usare SQL Server Management Studio per connettersi al database del server di replica. Dopo la connessione al database del server di replica, eseguire una query per importare il certificato e specificare il codice del sito del sito primario e la porta di Service Broker in uso nel server di database del sito. Questa azione configura il server di replica del database in modo che usi Service Broker per comunicare con il database del sito primario.

    Eseguire la query seguente per importare il certificato dal server di database del sito: EXEC sp_BgbConfigSSBForRemoteService '<Site Code>', '<SQL Service Broker Port>', '<Certificate File Path>'

Pochi minuti dopo aver completato la configurazione del database del sito e del database di replica del database, il gestore delle notifiche nel sito primario configura la conversazione di Service Broker per la notifica client dal database del sito primario alla replica di database.

Script supplementare per altre repliche di database in un singolo SQL Server

Quando si usa lo script del passaggio 4 per configurare un certificato autofirmato per il server di replica di database in un SQL Server che dispone già di una replica di database che si prevede di continuare a usare, usare una versione modificata dello script originale. Le modifiche seguenti impediscono allo script di eliminare un certificato esistente nel server e di creare certificati successivi con nomi descrittivi univoci. Modificare lo script originale come indicato di seguito:

  • Impostare come commento ogni riga tra le voci # Delete existing cert if one exists dello script e # Create the new cert. Aggiungere un segno di cancelletto (#) come primo carattere di ogni riga applicabile.

  • Per ogni replica di database successiva che si usa questo script per configurare, aggiornare il nome descrittivo per il certificato. Modificare la riga $enrollment.CertificateFriendlyName = "ConfigMgr SQL Server Identification Certificate" e sostituire ConfigMgr SQL Server Identification Certificate con un nuovo nome. Ad esempio, ConfigMgr SQL Server Identification Certificate1.

Gestire le configurazioni di replica di database

Quando si usa una replica di database in un sito, usare le informazioni riportate nelle sezioni seguenti per integrare il processo di disinstallazione di una replica di database, disinstallazione di un sito che usa una replica di database o spostamento del database del sito in una nuova installazione di SQL Server. Quando si eliminano le pubblicazioni, usare le indicazioni per eliminare la replica transazionale per la versione di SQL Server usata per la replica di database. Per altre informazioni, vedere Eliminare una pubblicazione.

Nota

Dopo aver ripristinato un database del sito configurato per le repliche di database, prima di poter usare le repliche di database, riconfigurare ogni replica di database e ricreare sia le pubblicazioni che le sottoscrizioni.

Disinstallare una replica di database

Quando si usa una replica di database per un punto di gestione, potrebbe essere necessario disinstallarla e riconfigurarla per l'uso. Ad esempio, rimuovere le repliche di database prima di aggiornare Configuration Manager alla versione più recente. Al termine dell'aggiornamento del sito, ripristinare la replica di database per l'uso.

Per disinstallare una replica di database, seguire questa procedura.

  1. Nell'area di lavoro Amministrazione della console di Configuration Manager espandere Configurazione sito e quindi selezionare Server e ruoli del sistema del sito. Nel riquadro dei dettagli selezionare il server del sistema del sito che ospita il punto di gestione che usa la replica di database che verrà disinstallata.

  2. Nel riquadro Ruoli del sistema del sito selezionare il ruolo Punto di gestione . Nella scheda Ruolo sito della barra multifunzione selezionare Proprietà.

  3. Passare alla scheda Database punto di gestione . Selezionare Usa il database del sito per configurare il punto di gestione in modo che usi il database del sito anziché la replica del database. Selezionare OK per salvare la configurazione.

  4. Usare SQL Server Management Studio per eseguire le attività seguenti:

    • Eliminare la pubblicazione per la replica di database dal database del server del sito.

    • Eliminare la sottoscrizione per la replica di database dal server di replica di database.

    • Eliminare il database di replica dal server di replica di database.

    • Disabilitare la pubblicazione e la distribuzione nel server di database del sito. Per disabilitare la pubblicazione e la distribuzione, fare clic con il pulsante destro del mouse sulla cartella Replica e scegliere Disabilita pubblicazione e distribuzione.

Dopo aver eliminato la pubblicazione, la sottoscrizione, il database di replica e aver disabilitato la pubblicazione nel server di database del sito, la replica di database viene disinstallata.

Disinstallare un server del sito che pubblica una replica di database

Prima di disinstallare un sito che pubblica una replica di database, seguire questa procedura per pulire la pubblicazione e le sottoscrizioni.

  1. Utilizzare SQL Server Management Studio per eliminare la pubblicazione della replica di database dal database del server del sito.

  2. Usare SQL Server Management Studio per eliminare la sottoscrizione di replica di database da ogni SQL Server remota che ospita una replica di database per questo sito.

  3. Disinstallare il sito.

Spostare un database del server del sito che pubblica una replica di database

Quando si sposta il database del sito in un nuovo computer, seguire questa procedura:

  1. Utilizzare SQL Server Management Studio per eliminare la pubblicazione per la replica di database dal database del server del sito.

  2. Usare SQL Server Management Studio per eliminare la sottoscrizione per la replica di database da ogni server di replica di database per questo sito.

  3. Spostare il database nel nuovo computer SQL Server. Per altre informazioni, vedere Modificare la configurazione del database del sito.

  4. Ricreare la pubblicazione per la replica di database nel server di database del sito. Per altre informazioni, vedere Passaggio 1 - Configurare il server di database del sito per pubblicare la replica di database.

  5. Ricreare le sottoscrizioni per la replica di database in ogni server di replica di database. Per altre informazioni, vedere Passaggio 2 - Configurazione del server di replica di database.