Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Možnost webové synchronizace pro SQL Server Merge Replication umožňuje replikaci dat pomocí protokolu HTTPS přes internet. Pro použití webové synchronizace nejprve dokončete následující konfigurační kroky:
Vytvořte nové doménové účty a mapujte přihlašovací údaje do SQL Server.
Nakonfigurujte počítač, na kterém běží Microsoft Internet Information Services (IIS), aby synchronizoval předplatné.
Nakonfigurujte publikaci pro sloučení pro synchronizaci webu.
Nastavte jedno nebo více odběrů pro použití webové synchronizace.
Note
Pokud plánujete replikovat velké objemy dat nebo používat velké datové typy, jako je varchar(max), přečtěte si sekci "Replikace velkých objemů dat" v tomto tématu.
Pro úspěšné nastavení webové synchronizace musíte rozhodnout, jak nastavit bezpečnost tak, aby vyhovovala vašim konkrétním požadavkům a politikám. Udělejte tato rozhodnutí a vytvořte potřebné účty, než se pokusíte nastavit IIS, publikaci a předplatné.
Následující postupy popisují zjednodušenou bezpečnostní konfiguraci, která využívá lokální účty. Tato zjednodušená konfigurace je vhodná pro instalace, kde na stejném počítači běží jak IIS, SQL Server Publisher i distributor, i když je mnohem pravděpodobnější (a doporučeno) použít topologii s více servery pro výrobní instalaci. V postupech můžete nahradit doménové účty místními účty.
Vytváření nových účtů a mapování přihlašovacích údajů do SQL Server
SQL Server Replication Listener (replisapi.dll) se připojuje k Publisher tím, že se vydáva za účet, který určíte pro aplikační pool spojený s replikační webovou stránkou.
Účet, který používáte pro SQL Server Replication Listener, potřebuje oprávnění popsaná v Merge Agent Security v sekci "Connect to the Publisher or Distributor." Shrnuto, účet musí:
Staňte se členem seznamu pro přístup k publikacím (PAL).
Být namapován na přihlašovací účet spojený s uživatelem v publikační databázi.
Být mapován na login přidružený k uživateli v distribuční databázi.
Mějte oprávnění ke čtení na snapshot share.
Pokud používáte SQL Server Replication poprvé, musíte také vytvořit účty a přihlašovací údaje pro replikační agenty. Pro více informací viz sekce "Konfigurace publikace" a "Konfigurace předplatného" v tomto článku.
Než začnete konfigurovat webovou synchronizaci, přečtěte si sekci "Nejlepší bezpečnostní postupy pro webovou synchronizaci" v tomto článku. Pro více informací o bezpečnosti webové synchronizace viz Security Architecture for Web Synchronization.
Konfigurace počítače, který běží na IIS
Webová synchronizace vyžaduje, abyste IIS nainstalovali a nakonfigurovali. Než můžete publikaci nastavit pro webovou synchronizaci, potřebujete URL na replikační webovou stránku.
Webová synchronizace je na IIS podporována od verze 5.0. Průvodce synchronizací webu Configure není na IIS verzi 7.0 podporován. Od SQL Server 2012, abyste mohli použít komponentu Web sync na IIS serveru, nainstalovat SQL Server s replikací. Může to být bezplatná edice SQL Server Express.
TLS je vyžadováno pro synchronizaci webu. Potřebujete bezpečnostní certifikát vydaný certifikační autoritou. Pouze pro testování můžete použít vlastní bezpečnostní certifikát.
Pro konfiguraci IIS pro webovou synchronizaci
SQL Server Management Studio: Konfigurujte IIS pro webovou synchronizaci
SQL Server Management Studio: Konfigurujte IIS 7 pro webovou synchronizaci
Vytváření webové zahrady
SQL Server Replication Listener podporuje dvě souběžné synchronizační operace na vlákno. Překročení tohoto limitu může způsobit, že Replication Listener přestane reagovat. Vlastnost aplikačního poolu Maximum Worker Processes určuje počet vláken přidělených do replisapi.dll. Ve výchozím nastavení je tato vlastnost nastavena na 1.
Větší počet souběžných synchronizačních operací na CPU můžete podpořit zvýšením hodnoty vlastnosti Maximum Worker Process. Škálování zvýšením počtu pracovních procesů na CPU se nazývá vytvoření "webové zahrady".
Webové zahradničení umožňuje synchronizaci více než dvou předplatitelů současně. Zvyšuje také využití CPU o replisapi.dll, což může negativně ovlivnit celkový výkon serveru. Vyvažujte tyto úvahy při výběru hodnoty pro Maximum Worker Processes.
Pro zvýšení maximálního počtu pracovních procesů v IIS 7
V Internetové Informační Služby (IIS) Manageru rozviňte lokální serverový uzel a poté klikněte na uzel Application Pool.
Vyberte aplikační pool spojený s webovou synchronizační stránkou a poté klikněte na Pokročilá nastavení v panelu Akce .
V dialogu Pokročilá nastavení, pod nadpisem Model procesů , klikněte na řádek označený Maximum pracovních procesů. Změňte hodnotu nemovitosti a pak klikněte na OK.
Konfigurace publikace
Chcete-li použít webovou synchronizaci, vytvořte publikaci stejným způsobem jako při vytváření publikace pro standardní topologii slučování. Další informace najdete v tématu Publikování dat a databázových objektů.
Po vytvoření publikace povolte možnost umožnit webovou synchronizaci pomocí jedné z následujících metod: SQL Server Management Studio, Transact-SQL nebo Replication Management Objects (RMO). Pro umožnění webové synchronizace je nutné zadat adresu webového serveru pro připojení k odběratelům.
Pokud používáte Publisher poprvé, musíte také nastavit distributora a snapshot share. Agent Merge na straně každého odběratele musí mít oprávnění pro čtení ke sdílené složce se snímkem. Pro více informací viz Configure Distribution a Secure the Snapshot Folder.
gen je vyhrazené slovo v XML souborech WebSync. Nepokoušejte se publikovat tabulky obsahující sloupce pojmenované gen.
Konfigurace předplatného
Po povolení publikace a nastavení IIS vytvořte pull předplatné a specifikujte, že pull předplatné by se mělo synchronizovat pomocí IIS. (Webová synchronizace je podporována pouze pro pull subscriptions.)
Upgrade z dřívější verze SQL Server
Pokud máte již nastavenou webovou synchronizační topologii a upgradujete SQL Server, ujistěte se, že nejnovější verze replisapi.dll je zkopírována do virtuálního adresáře používaného webovou synchronizací. Ve výchozím nastavení se nejnovější verze replisapi.dll nachází v C:\Program Files\Microsoft SQL Server\<nnn>\COM.
Replikace velkých objemů dat
Aby se předešlo možným problémům s pamětí na počítačích s předplatitelem, webová synchronizace používá výchozí maximální velikost XML souboru 100 MB pro přenos změn. Zvyšte limit nastavením následujícího klíče registru:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\Replication
WebSyncMaxXmlSize DWORD 2000000
Rozsah přijatelných hodnot pro tento klíč je od 100 MB do 4 GB. Hodnota je uvedena v KB. Nastavení tohoto parametru na vysokou hodnotu nezaručuje, že dokážete synchronizovat takové množství dat. Efektivní limit je omezen množstvím souvislé paměti, která je na počítači Subscriber dostupná. Pokud musíte mít hodnotu větší než 100 MB, postupně zvyšujte hodnotu a testujte spotřebu paměti s typickou zátěží na předplatitele.
Maximální velikost XML souboru je 4 GB, ale replikace synchronizuje změny z tohoto souboru v dávkách. Maximální velikost dat a metadat je 25 MB. Musíte zajistit, aby objem dat v každé dávce nepřesáhl přibližně 20 MB, aby zbyl prostor pro metadata a další režii. Tento limit má následující důsledky:
Nemůžete replikovat žádný sloupec, který by způsobil, že data a metadata překročí 25 MB. Tento limit může být problém, když replikujete řádky obsahující velké datové typy, například varchar(max).
Pokud replikujete velké objemy dat, možná budete muset upravit velikost dávkové kapacity Merge Agent.
Velikost dávky pro slučovací replikaci se udává v generacích, což jsou sady změn pro jednotlivé články. Použijte parametry -DownloadGenerationsPerBatch a -UploadGenerationsPerBatch v Merge Agent k určení počtu generací v dávce. Další informace viz Agent slučování replikací.
Pro velké objemy dat specifikujte malý počet pro každý parametr dávkování. Začněte s hodnotou 10 a pak ladíte podle potřeb aplikace a výkonu. Obvykle tyto parametry zadáte v profilu agenta. Další informace o profilech najdete v tématu Profily agenta replikace.
Osvědčené bezpečnostní postupy pro synchronizaci webu
Webová synchronizace nabízí mnoho možností pro bezpečnostní nastavení. Použijte následující přístup:
SQL Server Distributor a Publisher mohou být na stejném počítači (typické řešení pro replikaci při sloučení). Nicméně nainstalujte IIS na samostatný počítač.
Použijte Transport Layer Security (TLS), dříve známý jako Secure Sockets Layer (SSL), k zašifrování spojení mezi účastníkem a počítačem běžícím na IIS. Webová synchronizace vyžaduje toto šifrování.
Používejte základní ověřování pro připojení od odběratele k IIS. Použitím Basic Authentication může IIS navazovat spojení s Publisher/Distributorem jménem předplatitele bez nutnosti delegace. Delegace je vyžadována, pokud používáte integrovanou autentizaci.
Note
Základní autentizace je způsob, jakým jsou přihlašovací údaje předávány do IIS. Základní autentizace nebrání specifikování doménových účtů Windows pro připojení k IIS.
Specifikujte, že Snapshot Agent běží pod doménovým účtem Windows, a určejte, že agent navazuje spojení jako tento účet. (Toto je výchozí nastavení.) Specifikujte, že každý Merge Agent běží pod doménovým účtem uživatele, který používá počítač Subscriber, a upřejte, že agent navazuje spojení jako tento účet.
Pro více informací o oprávněních, která agenti potřebují, viz Model bezpečnosti replikačních agentů.
Zadejte stejný doménový účet jako ten, který používá Merge Agent, když zadáte účet a heslo na stránce Informace o webovém serveru v Vyhlazovateli nových odběrů nebo když zadáte hodnoty pro
@internet_url@internet_loginparametry sp_addpullsubscription_agent. Tento účet musí mít oprávnění ke čtení pro sdílení snapshotu.Každá publikace by měla používat samostatný virtuální adresář pro IIS.
Účet, pod kterým běží SQL Server Replication Listener (
replisapi.dll), je zároveň účtem, který se během synchronizace připojuje k Publisher a Distributor. Tento účet musí být namapován na účet Login serveru SQL Server na serverech Publisher a Distributor. Pro více informací viz sekce "Setting Permissions for the SQL Server Replication Listener" v sekci Configure IIS for Web Synchronization.FTP můžete použít k doručení snímku z Publisher do počítače, který běží na IIS. Počítač, který provozuje IIS, vždy doručuje snapshot odběrateli pomocí HTTPS. Další informace naleznete v tématu Přenos snímků přes FTP.
Pokud jsou servery v replikační topologii za firewallem, možná budete muset otevřít porty ve firewallu, abyste umožnili synchronizaci webu.
Počítač účastníka se připojuje k počítači, který provozuje IIS přes HTTPS, pomocí TLS, který je obvykle nakonfigurován na port 443. Předplatitelé SQL Server Compact se mohou také připojit přes HTTP, který je obvykle nakonfigurován pro port 80.
Počítač, který provozuje IIS, se obvykle připojuje k Publisher nebo Distributoru pomocí portu 1433 (výchozí instance). Pokud je Publisher nebo Distributor pojmenovanou instancí na serveru s jinou výchozí instancí, obvykle se používá port 1500 k připojení k pojmenované instanci.
Pokud je počítač běžící na IIS oddělen od distributoru firewallem a pro doručení snapshotů se používá FTP sdílený systém, musíte otevřít porty používané pro FTP. Další informace naleznete v tématu Přenos snímků přes FTP.
Important
Otevření portů ve vaší bráně firewall může vystavit váš server škodlivým útokům. Před otevřením portů se ujistěte, že rozumíte systémům brány firewall. Další informace najdete v tématu Důležité informace o zabezpečení pro instalaci SQL Serveru.