Sdílet prostřednictvím


Kurz: Konfigurace replikace mezi dvěma plně připojenými servery (transakční)

platí pro:SQL Server

Transakční replikace je dobrým řešením problému přesunu dat mezi nepřetržitě připojenými servery. Pomocí Průvodce replikací můžete snadno nakonfigurovat a spravovat topologii replikace.

V tomto kurzu se dozvíte, jak nakonfigurovat topologii transakční replikace pro nepřetržitě připojené servery. Další informace o tom, jak funguje transakční replikace, najdete v přehledu transakční replikace.

Co se naučíte

V tomto kurzu se naučíte publikovat data z jedné databáze do druhé pomocí transakční replikace.

V tomto kurzu se naučíte, jak:

  • Vytvořte vydavatele prostřednictvím transakční replikace.
  • Vytvořte odběratele pro transakčního vydavatele.
  • Ověřte latenci předplatného a změřte ji.

Požadavky

Tento kurz je určený pro uživatele, kteří jsou obeznámeni se základními databázovými operacemi, ale mají omezené zkušenosti s replikací. Než začnete s tímto kurzem, musíte dokončit kurz: Příprava SQL Serveru na replikaci.

K dokončení tohoto kurzu potřebujete SQL Server, SQL Server Management Studio (SSMS) a databázi AdventureWorks:

  • Na serveru vydavatele (zdroj) nainstalujte:

    • Libovolná edice SQL Serveru s výjimkou SQL Serveru Express nebo SQL Serveru Compact. Tyto edice nemohou být vydavateli replikace.
    • Ukázková AdventureWorks2025 databáze. Pro zvýšení zabezpečení se ukázkové databáze ve výchozím nastavení nenainstalují.
  • Na server odběratele (cíl) nainstalujte libovolnou edici SQL Serveru s výjimkou SQL Serveru Compact. SQL Server Compact nemůže být předplatitelem transakční replikace.

  • Nainstalujte SQL Server Management Studio.

  • Nainstalujte edici SQL Server 2017 Developer.

  • Stáhněte si ukázkovou databázi AdventureWorks. Pokyny k obnovení databáze v nástroji SSMS najdete v tématu Obnovení databáze.

Poznámka:

Replikace není podporována v instancích SQL Serveru, které jsou od sebe více než dvě verze.

V aplikaci SQL Server Management Studio se musíte připojit k vydavateli a odběrateli pomocí přihlášení, které je členem pevné role serveru správce systému . Další informace o této roli najdete v tématu Role na úrovni serveru.

Odhadovaný čas dokončení tohoto kurzu: 60 minut

Konfigurace vydavatele pro transakční replikaci

V této části vytvoříte transakční publikaci pomocí aplikace SQL Server Management Studio pro publikování filtrované podmnožiny tabulky Product v AdventureWorks2025 ukázkové databázi. Do přístupového seznamu publikace (PAL) přidáte také přihlášení k SQL Serveru, které používá distribuční agent.

Vytvoření publikace a definování článků

  1. Připojte se k vydavateli v aplikaci SQL Server Management Studio a potom rozbalte uzel serveru.

  2. Klikněte pravým tlačítkem na agenta SQL Serveru a vyberte Spustit. Před vytvořením publikace by měl být spuštěn agent SQL Serveru. Pokud tento krok nespustí agenta, budete to muset provést ručně z SQL Server Configuration Manageru.

  3. Rozbalte složku Replikace , klikněte pravým tlačítkem myši na složku Místní publikace a vyberte Možnost Nová publikace. Tento krok spustí Průvodce vytvořením nové publikace:

    Výběry pro spuštění Průvodce novou publikací

  4. Na stránce Databáze publikace vyberte AdventureWorks2025a pak vyberte Další.

  5. Na stránce Typ publikace vyberte Transakční publikaci a pak vyberte Další:

    Stránka Typ publikace s vybraným typem publikace

  6. Na stránce Články rozbalte uzel Tabulky a zaškrtněte políčko Produkt . Potom rozbalte položku Product a zrušte zaškrtnutí políček vedle položky ListPrice a StandardCost. Vyberte Další.

    Stránka Články s vybranými články k publikování

  7. Na stránce Filtrovat řádky tabulky vyberte Přidat.

  8. V dialogovém okně Přidat filtr vyberte sloupec SafetyStockLevel . Vyberte šipku vpravo pro přidání sloupce do klauzule WHERE dotazu. Potom ručně zadejte modifikátor klauzule WHERE následujícím způsobem:

    WHERE [SafetyStockLevel] < 500  
    

    Stránka Filtrovat toky v tabulce a dialogové okno Přidat filtr

  9. Zvolte OK a pak vyberte Další.

  10. Zaškrtněte políčko Vytvořit snímek okamžitě a nechte snímek k dispozici pro inicializaci předplatných a vyberte Další:

    Stránka Snímek agenta se zaškrtnutým políček

  11. Na stránce Zabezpečení agenta zrušte zaškrtnutí políčka Použít nastavení zabezpečení z agenta snímků.

    Vyberte Nastavení zabezpečení pro agenta snímků. Do pole < zadejte >, zadejte heslo pro tento účet a pak vyberte OK.

    Stránka Zabezpečení agenta a dialogové okno Zabezpečení agenta snímků

  12. Opakováním předchozího kroku nastavte <Publisher_Machine_Name>\repl_logreader jako účet procesu pro agenta Čtenář protokolů. Pak vyberte OK.

    Dialogové okno Zabezpečení agenta čtenáře protokolů a stránka Zabezpečení agenta

  13. Na stránce Dokončit průvodce zadejte AdvWorksProductTrans do pole Název publikace a vyberte Dokončit:

    Stránka Dokončení průvodce s názvem publikace

  14. Po vytvoření publikace vyberte Zavřít a dokončete průvodce.

Při pokusu o vytvoření publikace může dojít k následující chybě, pokud agent SQL Serveru není spuštěný. Tato chyba značí, že publikace byla úspěšně vytvořena, ale váš agent snímků se nepodařilo spustit. Pokud k tomu dojde, budete muset spustit agenta SQL Serveru a pak ručně spustit agenta snímku. V další části najdete pokyny.

Upozornění, že se nepodařilo spustit agenta snímku

Zobrazení stavu generování snímků

  1. Připojte se k vydavateli v aplikaci SQL Server Management Studio, rozbalte uzel serveru a potom rozbalte složku Replikace .

  2. Ve složce Místní publikace klikněte pravým tlačítkem myši na AdvWorksProductTrans a pak vyberte Zobrazit stav agenta snímku:
    Příkaz v kontextové nabídce pro zobrazení stavu agenta snapshotu

  3. Zobrazí se aktuální stav úlohy agenta snapshotu pro publikaci. Než budete pokračovat v další části, ověřte, že úloha snímku proběhla úspěšně.

Pokud agent SQL Serveru neběžel, když jste vytvořili publikaci, zjistíte, že agent snímků pro vaši publikaci nebyl nikdy spuštěn, když zkontrolujete jeho stav. Pokud je to váš případ, vyberte Spustit a spusťte svého agenta snímků:

Tlačítko Start a změna stavové zprávy, aby se zobrazilo, že se spustil agent snímku

Objeví-li se zde chyba, podívejte se na Řešení potíží s chybou agenta snímků.

Přidejte přihlášení distribučního agenta k PAL

  1. Připojte se k vydavateli v aplikaci SQL Server Management Studio, rozbalte uzel serveru a potom rozbalte složku Replikace .

  2. Ve složce Místní publikace klikněte pravým tlačítkem myši na AdvWorksProductTrans a pak vyberte Vlastnosti. Zobrazí se dialogové okno Vlastnosti publikace .

    a. Vyberte stránku přístupového seznamu publikace a vyberte Přidat.
    b) V dialogovém okně Přidat přístup k publikaci vyberte <Publisher_Machine_Name\repl_distribution> a vyberte OK.

    Výběry pro přidání přihlášení do přístupového seznamu publikace

Další informace naleznete v tématu Koncepty programování replikace.

Vytvoření odběru transakční publikace

V této části přidáte odběratele do publikace, kterou jste vytvořili dříve. V tomto kurzu se používá vzdálený odběratel (NODE2\SQL2016), ale můžete také přidat předplatné místně vydavateli.

Vytvoření odběru

  1. Připojte se k vydavateli v aplikaci SQL Server Management Studio, rozbalte uzel serveru a potom rozbalte složku Replikace .

  2. Ve složce Místní publikace klikněte pravým tlačítkem myši na publikaci AdvWorksProductTrans a pak vyberte Nová předplatná. Spustí se Průvodce novým předplatným:

    Výběry pro spuštění Průvodce vytvořením nového předplatného

  3. Na stránce Publikace vyberte AdvWorksProductTrans a pak vyberte Další:

    Stránka Publikace s vybranou publikací

  4. Na stránce Umístění distribučního agenta vyberte Spustit všechny agenty na distributoru a pak vyberte Další. Další informace o aktivních a pasivních předplatných najdete v části Přihlášení k odběru publikací.

    Stránka Umístění distribučního agenta s vybranou možností pro spuštění všech agentů u distributora

  5. Pokud se na stránce Odběratelé nezobrazí název instance odběratele, vyberte Přidat odběratele a pak v rozevíracím seznamu vyberte Přidat odběratele SQL Serveru . Tento krok otevře dialogové okno Připojit k serveru . Zadejte název instance odběratele a pak vyberte Připojit.

    Po přidání odběratele zaškrtněte políčko vedle názvu instance odběratele. Potom v části Databáze předplatného vyberte Možnost Nová databáze.

    Stránka Odběratelé s možností přidání serveru odběratele

  6. Zobrazí se dialogové okno Nová databáze . Do pole Název databáze zadejte ProductReplica, vyberte OK a pak vyberte Další:

    Zadání názvu databáze předplatného

  7. Na stránce Zabezpečení distribučního agenta vyberte tlačítko se třemi tečkami (...). Do pole < zadejte >, zadejte heslo pro tento účet, vyberte OK a pak vyberte Další.

    Informace o distribučním účtu v dialogovém okně Zabezpečení distribučního agenta

  8. Výběrem možnosti Dokončit přijměte výchozí hodnoty na zbývajících stránkách a dokončete průvodce.

Nastavení oprávnění databáze u odběratele

  1. Připojte se k odběrateli v aplikaci SQL Server Management Studio. Rozbalte položku Zabezpečení, klikněte pravým tlačítkem na Přihlášení a pak vyberte Nové přihlášení.

    a. Na stránce Obecné v části Přihlašovací jméno vyberte Hledat a přidejte přihlášení pro <Subscriber_Machine_Name\repl_distribution>.

    b) Na stránce Mapování uživatelů udělte přihlašovacímu jménu db_owner členství pro databázi ProductReplica.

    Výběry pro konfiguraci přihlášení pro odběratele

  2. Kliknutím na tlačítko OK zavřete dialogové okno Nové přihlášení .

Zobrazení stavu synchronizace předplatného

  1. Připojte se k vydavateli v aplikaci SQL Server Management Studio. Rozbalte uzel serveru a potom rozbalte složku Replikace .

  2. Ve složce Místní publikace rozbalte publikaci AdvWorksProductTrans , klikněte pravým tlačítkem myši na odběr v databázi ProductReplica a pak vyberte Zobrazit stav synchronizace. Zobrazí se aktuální stav synchronizace předplatného:

    Výběry pro otevření dialogového okna Zobrazit stav synchronizace

  3. Pokud předplatné není v rámci advWorksProductTrans viditelné, aktualizujte seznam výběrem klávesy F5.

Další informace najdete tady:

Měření latence replikace

V této části pomocí tokenů traceru ověříte, že se změny replikují odběrateli a určí latenci. Latence je čas, který uplyne od provedení změny u vydavatele do jejího zobrazení odběrateli.

  1. Připojte se k vydavateli v aplikaci SQL Server Management Studio. Rozbalte uzel serveru, klikněte pravým tlačítkem na složku Replikace a pak vyberte Spustit monitorování replikace:

    Příkaz

  2. Rozbalte skupinu vydavatele v levém podokně, rozbalte instanci vydavatele a pak vyberte publikaci AdvWorksProductTrans .

    a. Vyberte záložku Tracer Tokens.
    b) Vyberte Vložit trasovací modul.
    c. Zobrazit uplynulý čas tokenu traceru v následujících sloupcích: Publisher to Distributor, Distributor to Subscriber, Total Latency. Hodnota Čeká na vyřízení označuje, že token nedosáhl zadaného bodu.

    Informace o tokenu traceru

Další informace najdete tady:

Další krok