Share via


Zelfstudie: SQL Server voorbereiden op replicatie (uitgever, distributeur, abonnee)

Van toepassing op:SQL Server

Het is belangrijk om de beveiliging te plannen voordat u uw replicatietopologie configureert. In deze zelfstudie leert u hoe u een replicatietopologie beter kunt beveiligen. U ziet ook hoe u distributie configureert. Dit is de eerste stap bij het repliceren van gegevens. Je moet deze handleiding voltooien voordat je één van de andere handleidingen doet.

Opmerking

Als u gegevens veilig tussen servers wilt repliceren, moet u alle aanbevelingen in de aanbevolen procedures voor replicatiebeveiliging implementeren.

In deze zelfstudie leert u hoe u een server voorbereidt, zodat replicatie veilig kan worden uitgevoerd met minimale bevoegdheden.

In deze handleiding leer je hoe je:

  • Maak Windows-accounts voor replicatie.
  • Bereid de map met momentopnamen voor.
  • Distributie configureren.

Vereiste voorwaarden

Deze zelfstudie is bedoeld voor gebruikers die bekend zijn met fundamentele databasebewerkingen, maar die beperkte blootstelling aan replicatie hebben.

U hebt SQL Server, SQL Server Management Studio (SSMS) en een AdventureWorks-database nodig om deze zelfstudie te voltooien:

  • Installeer op de uitgeverserver (bron):

    • Elke editie van SQL Server, met uitzondering van SQL Server Express of SQL Server Compact. Deze edities kunnen niet als replicatie-uitgevers dienen.

    • De AdventureWorks2025 voorbeelddatabase. Ter verbetering van de beveiliging worden de voorbeelddatabases niet standaard geïnstalleerd.

  • Installeer op de abonneeserver (bestemming) een editie van SQL Server, met uitzondering van SQL Server Compact. SQL Server Compact kan geen abonnee zijn in transactionele replicatie.

  • Installeer SQL Server Management Studio-.

  • Installeer de SQL Server Developer-editie.

  • Download de AdventureWorks-voorbeelddatabase. Zie Een databaseback-up herstellen met behulp van SSMS voor instructies over het herstellen van een database in SSMS.

Opmerking

  • Replicatie wordt niet ondersteund op SQL Server-exemplaren die uit meer dan twee versies bestaan. Zie Replicatie achterwaartse compatibiliteit voor meer informatie.

  • In SQL Server Management Studio moet u verbinding maken met de uitgever en abonnee met behulp van een aanmelding die lid is van de vaste serverfunctie sysadmin . Zie Functies op serverniveau voor meer informatie over deze rol.

Geschatte tijd voor het voltooien van deze zelfstudie: 30 minuten

Windows-accounts maken voor replicatie

In deze sectie maakt u Windows-accounts om replicatieagents uit te voeren. U maakt een afzonderlijk Windows-account op de lokale server voor de volgende agents:

Vertegenwoordiger Locatie Accountnaam
Snapshotagent Uitgever < machine_name>\repl_snapshot
Logboekleesagent Uitgever < machine_name>\repl_logreader
Distributieagent Uitgever en abonnee < machine_name>\repl_distribution
Agent samenvoegen Uitgever en abonnee < machine_name>\repl_merge

Opmerking

In de zelfstudies voor replicatie delen de uitgever en distributeur hetzelfde exemplaar (NODE1\SQL2016) van SQL Server. Het abonnee-exemplaar (NODE2\SQL2016) is extern. De uitgever en abonnee kunnen hetzelfde exemplaar van SQL Server delen, maar dit is geen vereiste. Als de uitgever en abonnee hetzelfde exemplaar delen, zijn de stappen die worden gebruikt om accounts bij de abonnee te maken niet vereist.

Lokale Windows-accounts maken voor replicatieagents bij de uitgever

  1. Open bij de uitgever Computerbeheer vanuit Systeembeheerhulpmiddelen in het Configuratiescherm.

  2. Vouw in Systeemhulpprogramma'slokale gebruikers en groepen uit.

  3. Klik met de rechtermuisknop op Gebruikers en selecteer Nieuwe gebruiker.

  4. Voer repl_snapshot in het vak Gebruikersnaam in, geef het wachtwoord en andere relevante informatie op en selecteer Vervolgens Maken om het repl_snapshot-account te maken:

    Schermopname van het dialoogvenster Nieuwe gebruiker.

  5. Herhaal de vorige stap om de accounts repl_logreader, repl_distribution en repl_merge te maken:

    Schermopname van een lijst met replicatiegebruikers.

  6. Selecteer Sluitaf.

Lokale Windows-accounts maken voor replicatieagents bij de abonnee

  1. Open Computerbeheer vanuit systeembeheer in het Configuratiescherm bij de abonnee.

  2. Vouw in Systeemhulpprogramma'slokale gebruikers en groepen uit.

  3. Klik met de rechtermuisknop op Gebruikers en selecteer Nieuwe gebruiker.

  4. Voer repl_distribution in het vak Gebruikersnaam in, geef het wachtwoord en andere relevante informatie op en selecteer Vervolgens Maken om het repl_distribution-account te maken.

  5. Herhaal de vorige stap om het repl_merge-account te maken.

  6. Selecteer Sluitaf.

Zie het overzicht van replicatieagents voor meer informatie.

De map ‘snapshot’ voorbereiden

In deze sectie configureert u de momentopnamemap die wordt gebruikt om de momentopname van de publicatie te maken en op te slaan.

Een share maken voor de map voor momentopnames en het toewijzen van machtigingen

  1. Blader in Windows Verkenner naar de SQL Server-gegevensmap. De standaardlocatie is C:\Program Files\Microsoft SQL Server\MSSQL. X\MSSQL\Data.

  2. Maak een nieuwe map met de naam repldata.

  3. Klik met de rechtermuisknop op deze map en selecteer Eigenschappen.

    1. Selecteer Geavanceerd delen op het tabblad Delen in het dialoogvenster Eigenschappen van repldata.

    2. Selecteer In het dialoogvenster Geavanceerd delen de optie Deze map delen en selecteer vervolgens Machtigingen.

    Schermopname van selecties voor het delen van de map repldata.

  4. Selecteer Toevoegen in het dialoogvenster Machtigingen voor repldata. Typ in het vak Gebruiker, Computers, Serviceaccount of Groepen de naam van het momentopnameagentaccount dat u eerder hebt gemaakt, als <Publisher_Machine_Name>\repl_snapshot. Selecteer Namen controleren en vervolgens OK.

    Schermopname van selecties om machtigingen voor delen toe te voegen.

  5. Herhaal stap 6 om de andere twee accounts toe te voegen die u eerder hebt gemaakt: <Publisher_Machine_Name>\repl_merge en <Publisher_Machine_Name>\repl_distribution.

  6. Nadat u de drie accounts hebt toegevoegd, wijst u de volgende machtigingen toe:

    • repl_distribution: Lezen
    • repl_merge: Lezen
    • repl_snapshot: Volledig beheer

    Schermopname van gedeelde machtigingen voor elk account.

  7. Nadat uw sharemachtigingen juist zijn geconfigureerd, selecteert u OK om het dialoogvenster Machtigingen voor repldata te sluiten. Selecteer OK om het dialoogvenster Geavanceerd delen te sluiten.

  8. Selecteer in het dialoogvenster Eigenschappen van repldata het tabblad Beveiliging en selecteer Bewerken:

    Schermopname van de knop Bewerken op het tabblad Beveiliging.

  9. Selecteer Toevoegen in het dialoogvenster Machtigingen voor repldata. Voer in het vak Gebruikers, computers, serviceaccounts of groepen de naam in van het momentopname-agentaccount dat u eerder hebt gemaakt, zoals <Publisher_Machine_Name>\repl_snapshot. Selecteer Namen controleren en vervolgens OK.

    Schermopname van selecties om beveiligingsmachtigingen toe te voegen.

  10. Herhaal de vorige stap om machtigingen voor de distributieagent toe te voegen als <Publisher_Machine_Name>\repl_distribution en voor de samenvoegagent als <Publisher_Machine_Name>\repl_merge.

  11. Controleer of de volgende machtigingen zijn toegestaan:

    • repl_distribution: Lezen
    • repl_merge: Read
    • repl_snapshot: Volledig beheer

    Schermopname van gebruikersmachtigingen voor replicatiegegevens.

  12. Selecteer het tabblad Delen opnieuw en noteer het netwerkpad voor de share. U hebt dit pad later nodig bij het configureren van uw snapshotmap.

    Schermopname van het netwerkpad op het tabblad Delen.

  13. Selecteer OK om het dialoogvenster Eigenschappen van repldata te sluiten.

Voor meer informatie, zie de map Momentopname beveiligen.

Distributie configureren

In deze sectie configureert u distributie bij de uitgever en stelt u de vereiste machtigingen in voor de publicatie- en distributiedatabases. Als u de distributeur al hebt geconfigureerd, moet u publicatie en distributie uitschakelen voordat u aan deze sectie begint. Schakel publicatie en distributie niet uit als u een bestaande replicatietopologie moet behouden, met name in productie.

Het configureren van een uitgever met een externe distributeur valt buiten de scope van deze handleiding.

Distributie configureren bij de uitgever

  1. Maak verbinding met de uitgever in SQL Server Management Studio en vouw vervolgens het serverknooppunt uit.

  2. Klik met de rechtermuisknop op de map Replicatie en selecteer Distributie configureren:

    Schermopname van de opdracht Distributie configureren in het snelmenu.

    • Als u verbinding maakt met SQL Server met behulp van localhost in plaats van de werkelijke servernaam, wordt u gevraagd om een waarschuwing dat SQL Server geen verbinding kan maken met localhost of IP-adres. Selecteer OK in het waarschuwingsdialoogvenster. Wijzig in het dialoogvenster Verbinding maken met server de servernaam van localhost of IP-adres in de naam van uw server. Selecteer vervolgens Connect.

    • Er is momenteel een bekend probleem met SQL Server Management Studio (SSMS) 18.0 (en hoger) waarbij een waarschuwingsbericht niet wordt weergegeven wanneer er verbinding wordt gemaakt met de distributeur met het IP-adres, maar nog steeds ongeldig is. De werkelijke servernaam moet worden gebruikt bij het verbinden met de distributeur.

    Opmerking

    De servernaam kan worden opgegeven als <Hostname>,<PortNumber> voor een standaardexemplaren of <Hostname>\<InstanceName>,<PortNumber> voor een benoemd exemplaar. Geef het poortnummer voor uw verbinding op wanneer SQL Server is geïmplementeerd in Linux of Windows met een aangepaste poort en de browserservice is uitgeschakeld. Het gebruik van aangepaste poortnummers voor externe distributeur is van toepassing op SQL Server 2019 (15.x) en latere versies.

    De wizard Distributieconfiguratie wordt gestart.

  3. Selecteer op de pagina Distributeur de optie <ServerName>als een eigen distributeur; SQL Server maakt een distributiedatabase en logboek. Klik daarna op Volgende.

    Schermopname van de optie om de server als een eigen distributeur te laten fungeren.

  4. Als de SQL Server Agent niet wordt uitgevoerd, selecteert u op de startpagina van SQL Server AgentJa, configureert u de SQL Server Agent-service om automatisch te starten. Kies Volgende.

  5. Voer het pad \\<Publisher_Machine_Name>\repldata in het vak Momentopnamemap in en selecteer vervolgens Volgende. Dit pad moet overeenkomen met wat u eerder hebt gezien onder Netwerkpad voor de map repldata-eigenschappen nadat u de eigenschappen van uw share hebt geconfigureerd.

    Schermopname van de vergelijking van netwerkpaden in het dialoogvenster Repldata Properties en in de wizard Distributie configureren.

  6. Accepteer de standaardwaarden op de resterende pagina's van de wizard.

    Schermopname van de laatste pagina van de wizard.

  7. Selecteer Voltooien om distributie in te schakelen.

Mogelijk ziet u de volgende fout bij het configureren van de distributeur. Het is een indicatie dat het account dat is gebruikt om het SQL Server Agent-account te starten, geen beheerder van het systeem is. U moet de SQL Server Agent handmatig starten, deze machtigingen verlenen aan het bestaande account of wijzigen welk account de SQL Server Agent gebruikt.

Schermopname van het foutbericht voor het configureren van de SQL Server Agent.

Als uw SQL Server Management Studio-exemplaar wordt uitgevoerd met beheerdersrechten, kunt u de SQL Agent handmatig starten vanuit SSMS:

Schermopname van het selecteren van Start in het snelmenu voor de agent in SSMS.

Opmerking

Als de SQL Agent niet zichtbaar wordt gestart, klikt u met de rechtermuisknop op de SQL Server Agent in SSMS en selecteert u Vernieuwen. Als de status nog steeds is gestopt, start u deze handmatig vanuit SQL Server Configuration Manager.

Databasemachtigingen instellen

  1. Vouw in SQL Server Management Studio Beveiliging uit, klik met de rechtermuisknop op Aanmeldingen en selecteer vervolgens Nieuwe aanmelding:

    Schermopname van de opdracht 'Nieuwe aanmelding' in het snelmenu.

  2. Selecteer Zoeken op de pagina Algemeen. Voer <Publisher_Machine_Name>\repl_snapshot in het vak Geef de objectnaam op die u wilt selecteren, selecteer Namen controleren en selecteer vervolgens OK.

    Schermopname van selecties voor het invoeren van de objectnaam.

  3. Selecteer op de pagina Gebruikerstoewijzing, in de lijst gebruikers toegewezen aan deze login, zowel de distributie als de AdventureWorks2025 databases.

    Selecteer in de lijst met databaserollidmaatschappen de db_owner rol voor de aanmelding voor beide databases.

    Schermopname van het selecteren van de databases en hun rol.

  4. Selecteer OK om de aanmelding te maken.

  5. Herhaal stap 1-4 om een aanmelding te maken voor de andere lokale accounts (repl_distribution, repl_logreader en repl_merge). Deze aanmeldingen moeten ook worden toegewezen aan gebruikers die lid zijn van de vaste databaserol db_owner in de distributie en AdventureWorks-databases.

    Schermopname van alle vier de accounts in Objectverkenner.

Zie Distributie- en replicatieagentbeveiligingsmodelconfigureren voor meer informatie.

Volgende stap