Sdílet prostřednictvím


Synchronizace dat Agent pro Synchronizace dat SQL

Platí pro: Azure SQL Database

Synchronizujte data s databázemi SQL Serveru instalací a konfigurací agenta Synchronizace dat pro Synchronizace dat SQL v Azure. Další informace o Synchronizace dat SQL najdete v tématu Synchronizace dat napříč několika cloudovými a místními databázemi pomocí Synchronizace dat SQL.

Důležité

Synchronizace dat SQL v tuto chvíli nepodporuje službu Azure SQL Managed Instance ani Azure Synapse Analytics.

Stažení a instalace

Pokud chcete stáhnout agenta Synchronizace dat, přejděte na Synchronizace dat SQL Agent. Pokud chcete upgradovat Synchronizace dat Agent, nainstalujte agenta do stejného umístění jako původní agent a přepíše původní.

Bezobslužná instalace

Pokud chcete nainstalovat Synchronizace dat Agenta bezobslužně z příkazového řádku, zadejte příkaz podobný následujícímu příkladu. Zkontrolujte název staženého souboru .msi a zadejte vlastní hodnoty pro argumenty TARGETDIR a SERVICEACCOUNT .

  • Pokud nezadáte hodnotu pro TARGETDIR, výchozí hodnota je C:\Program Files (x86)\Microsoft SQL Data Sync 2.0.

  • Pokud zadáte LocalSystem hodnotu SERVICEACCOUNT, při konfiguraci agenta pro připojení k SQL Serveru použijte ověřování SQL Serveru.

  • Pokud jako hodnotu SERVICEACCOUNT zadáte uživatelský účet domény nebo místní uživatelský účet, musíte také zadat heslo s argumentem SERVICEPASSWORD . Například SERVICEACCOUNT="<domain>\<user>" SERVICEPASSWORD="<password>".

msiexec /i "SQLDataSyncAgent-2.0-x86-ENU.msi" TARGETDIR="C:\Program Files (x86)\Microsoft SQL Data Sync 2.0" SERVICEACCOUNT="LocalSystem" /qn

Synchronizace dat s databází SQL Serveru

Pokud chcete nakonfigurovat agenta Synchronizace dat, abyste mohli synchronizovat data s jednou nebo více databázemi SQL Serveru, přečtěte si téma Přidání databáze SQL Serveru.

Nejčastější dotazy k agentu Synchronizace dat

Proč potřebuji agenta klienta

Služba Synchronizace dat SQL komunikuje s databázemi SQL Serveru prostřednictvím klientského agenta. Tato funkce zabezpečení zabraňuje přímé komunikaci s databázemi za bránou firewall. Když služba Synchronizace dat SQL komunikuje s agentem, provede to pomocí šifrovaných připojení a jedinečného tokenu nebo klíče agenta. Databáze SQL Serveru ověřují agenta pomocí připojovacího řetězce a klíče agenta. Tento návrh poskytuje vysokou úroveň zabezpečení vašich dat.

Kolik instancí místního uživatelského rozhraní agenta je možné spustit

Spustit lze pouze jednu instanci uživatelského rozhraní.

Jak můžu změnit účet služby

Po instalaci klientského agenta je jediným způsobem, jak změnit účet služby, odinstalovat ho a nainstalovat nového klientského agenta s novým účtem služby.

Návody změnit klíč agenta

Klíč agenta může používat jenom jednou. Když odeberete nový agent, nebude možné ho znovu použít, ani ho nebude moct používat více agentů. Pokud potřebujete vytvořit nový klíč pro existujícího agenta, musíte mít jistotu, že se stejný klíč zaznamená s klientským agentem a se službou Synchronizace dat SQL.

Návody vyřazení klientského agenta

Pokud chcete okamžitě zneplatnit nebo vyřadit agenta, znovu vygenerujte jeho klíč na portálu, ale neodesílejte ho v uživatelském rozhraní agenta. Opětovné vygenerování klíče zneplatní předchozí klíč bez ohledu na to, jestli je odpovídající agent online nebo offline.

Návody přesunutí klientského agenta do jiného počítače

Pokud chcete spustit místního agenta z jiného počítače, než je aktuálně zapnutý, postupujte takto:

  1. Nainstalujte agenta do požadovaného počítače.
  2. Přihlaste se k portálu Synchronizace dat SQL a znovu vygenerujte klíč agenta pro nového agenta.
  3. Pomocí uživatelského rozhraní nového agenta odešlete nový klíč agenta.
  4. Počkejte, než klientský agent stáhne seznam místních databází, které byly zaregistrovány dříve.
  5. Zadejte přihlašovací údaje databáze pro všechny databáze, které se zobrazují jako nedostupné. Tyto databáze musí být dostupné z nového počítače, na kterém je agent nainstalovaný.

Návody odstranit databázi metadat synchronizace, pokud je k ní stále přidružený agent synchronizace.

Pokud chcete odstranit databázi metadat synchronizace s přidruženým agentem synchronizace, musíte nejprve odstranit agenta synchronizace. Pokud chcete agenta odstranit, postupujte takto:

  1. Vyberte databázi Synchronizace.
  2. Přejděte na stránku Synchronizovat s jinými databázemi .
  3. Vyberte agenta synchronizace a vyberte Odstranit.

Řešení potíží s nástrojem Data Sync Agent

Selhání instalace, odinstalace nebo opravy klientského agenta

  • Příčina: Toto selhání může způsobit mnoho scénářů. Pokud chcete zjistit konkrétní příčinu tohoto selhání, projděte si protokoly.

  • Řešení: Pokud chcete zjistit konkrétní příčinu selhání, vygenerujte protokoly Instalační služby systému Windows a prohlédněte si je. Protokolování můžete zapnout na příkazovém řádku. Pokud je například stažený instalační soubor SQLDataSyncAgent-2.0-x86-ENU.msi, vygenerujte a prozkoumejte soubory protokolu pomocí následujících příkazů:

    • Instalace: msiexec.exe /i SQLDataSyncAgent-2.0-x86-ENU.msi /l*v LocalAgentSetup.Log

    • Odinstalace: msiexec.exe /x SQLDataSyncAgent-2.0-x86-ENU.msi /l*v LocalAgentSetup.Log

      Můžete také zapnout protokolování pro všechny instalace prováděné Instalační službou systému Windows. Článek znalostní báze Microsoft Knowledge Base věnovaný povolení protokolování Instalační služby systému Windows poskytuje návod, jak zapnout protokolování Instalační služby systému Windows jedním kliknutím. Uvádí také umístění protokolů.

Klientský agent po zrušení odinstalace nefunguje

Klientský agent nefunguje ani po zrušení jeho odinstalace.

  • Příčina: K tomu dochází, protože klientský agent Synchronizace dat SQL neukládá přihlašovací údaje.

  • Řešení: Můžete vyzkoušet tato dvě řešení:

    • Pomocí services.msc znovu zadejte přihlašovací údaje pro klientského agenta.
    • Odinstalujte tohoto klientského agenta a pak nainstalujte nového. Stáhněte a nainstalujte nejnovějšího klientského agenta z webu Stažení softwaru.

Databáze není uvedená v seznamu agentů

Při pokusu o přidání do skupiny synchronizace se existující databáze SQL Serveru nezobrazí v seznamu agentů.

Tento problém může způsobovat tyto scénáře:

  • Příčina: Klientský agent a skupina synchronizace jsou v různých datacentrech.

  • Řešení: Klientský agent a skupina synchronizace musí být ve stejném datacentru. Pro nastavení máte dvě možnosti:

    • Vytvořte nového agenta v datacentru, ve kterém se nachází skupina synchronizace. Potom zaregistrujte databázi u daného agenta.
    • Odstraňte aktuální skupinu synchronizace. Potom znovu vytvořte skupinu synchronizace v datacentru, kde se agent nachází.
  • Příčina: Seznam databází klientského agenta není aktuální.

  • Řešení: Zastavte a restartujte službu klientského agenta.

    Místní agent stáhne seznam přidružených databází pouze při prvním odeslání klíče agenta. Při následných odesláních klíčů agenta se seznam přidružených databází nestahuje. Databáze, které jsou zaregistrované během přesunu agenta, se v původní instanci agenta nezobrazují.

Klientský agent se nespustí (chyba 1069)

Zjistíte, že agent není spuštěný na počítači, který hostuje SQL Server. Při pokusu o ruční spuštění agenta se zobrazí dialogové okno se zprávou typu Chyba 1069: Služba nebyla spuštěna kvůli selhání přihlášení.

dialogové okno Synchronizace dat chyba 1069

  • Příčina: Pravděpodobnou příčinou této chyby je, že se od vytvoření agenta a jeho hesla změnilo heslo na místním serveru.

  • Řešení: Aktualizujte heslo agenta na aktuální heslo serveru:

    1. Vyhledejte službu klientského agenta Synchronizace dat SQL.
      a. Vyberte Spustit.
      b. Do vyhledávacího pole zadejte services.msc.
      c. Ve výsledcích hledání vyberte Služby.
      d. V okně Služby se posuňte k položce pro Synchronizace dat SQL Agent.
    2. Klikněte pravým tlačítkem na položku SQL Data Sync Agent a pak vyberte Zastavit.
    3. Klikněte pravým tlačítkem na položku SQL Data Sync Agent a pak vyberte Vlastnosti.
    4. V okně SQL Data Sync Agent – Vlastnosti vyberte kartu Přihlášení.
    5. Do pole Heslo zadejte svoje heslo.
    6. Do pole Potvrzení hesla zadejte znovu svoje heslo.
    7. Vyberte Apply (Použít) a pak vyberte OK.
    8. V okně Služby klikněte pravým tlačítkem na službu SQL Data Sync Agent a pak vyberte Spustit.
    9. Zavřete okno Služby.

Nejde mi odeslat klíč agenta

Po vytvoření nebo opětovném vytvoření se pokusíte odeslat klíč agenta prostřednictvím aplikace SqlAzureDataSyncAgent. Odeslání se nepovedlo dokončit.

Dialogové okno Chyba synchronizace – Nejde odeslat klíč agenta

  • Požadavky. Než budete pokračovat, zkontrolujte následující požadavky:

    • Je spuštěná služba Synchronizace dat SQL pro Windows.

    • Účet služby pro službu Synchronizace dat SQL pro Windows má přístup k síti.

    • Odchozí port 1433 je v pravidle místní brány firewall otevřený.

    • Místní IP adresa se přidá do pravidla brány firewall serveru nebo databáze pro databázi metadat synchronizace.

  • Příčina: Klíč agenta jednoznačně identifikuje každého místního agenta. Klíč musí splňovat dvě podmínky:

    • Klíč klientského agenta na serveru Synchronizace dat SQL a v místním počítači musí být identické.
    • Klíč klientského agenta lze použít pouze jednou.
  • Řešení: Pokud váš agent nefunguje, je to proto, že jedna nebo obě tyto podmínky nejsou splněné. Jak zajistit, aby agent začal opět fungovat:

    1. Vygenerujte nový pár klíč.
    2. Tento nový klíč použijte pro příslušného agenta.

    Postup použití nového klíče pro konkrétního agenta:

    1. V Průzkumníku souborů přejděte do instalačního adresáře agenta. Výchozí instalační adresář je C:\Program Files (x86)\Microsoft SQL Data Sync.
    2. Dvakrát klikněte na podadresář bin.
    3. Otevřete aplikaci SqlAzureDataSyncAgent.
    4. Vyberte Submit Agent Key (Odeslat klíč agenta).
    5. Na určené místo vložte klíč ze schránky.
    6. Vyberte OK.
    7. Zavřete tento program.

Klientského agenta nejde odstranit z portálu, pokud je přidružená místní databáze nedostupná

Pokud je místní koncový bod (tj. databáze), která je zaregistrovaná u Synchronizace dat SQL klientského agenta nedostupná, není možné agenta klienta odstranit.

  • Příčina: Místního agenta nelze odstranit, protože nedostupná databáze je u tohoto agenta stále zaregistrovaná. Při pokusu o odstranění agenta se proces odstranění pokusí spojit s databází, což selže.

  • Řešení: K odstranění nedostupné databáze použijte příkaz "force delete".

Poznámka:

Pokud tabulky metadat synchronizace zůstanou po vynucení odstranění, použijte deprovisioningutil.exe je k vyčištění.

Aplikace místního agenta synchronizace se nemůže připojit k místní synchronizační službě

  • Řešení: Vyzkoušejte následující kroky:

    1. Ukončete tuto aplikaci.
    2. Otevřete panel Služby komponent.
      a. Do vyhledávacího pole na hlavním panelu zadejte services.msc.
      b. Ve výsledcích hledání dvakrát klikněte na Služby.
    3. Zastavte službu Synchronizace dat SQL.
    4. Restartujte službu Synchronizace dat SQL.
    5. Znovu tuto aplikaci otevřít.

Spuštění agenta Synchronizace dat z příkazového řádku

Z příkazového řádku můžete spustit následující příkazy agenta Synchronizace dat:

Příkaz ping služby

Využití

SqlDataSyncAgentCommand.exe -action pingsyncservice

Příklad

SqlDataSyncAgentCommand.exe -action "pingsyncservice"

Zobrazení registrovaných databází

Využití

SqlDataSyncAgentCommand.exe -action displayregistereddatabases

Příklad

SqlDataSyncAgentCommand.exe -action "displayregistereddatabases"

Odeslání klíče agenta

Využití

Usage: SqlDataSyncAgentCommand.exe -action submitagentkey -agentkey [agent key]  -username [user name] -password [password]

Příklad

SqlDataSyncAgentCommand.exe -action submitagentkey -agentkey [agent key generated from portal, PowerShell, or API] -username [user name to sync metadata database] -password [user name to sync metadata database]

Registrace databáze

Využití

SqlDataSyncAgentCommand.exe -action registerdatabase -servername [on-premisesdatabase server name] -databasename [on-premisesdatabase name]  -username [domain\\username] -password [password] -authentication [sql or windows] -encryption [true or false]

Příklady

SqlDataSyncAgentCommand.exe -action "registerdatabase" -serverName localhost -databaseName testdb -authentication sql -username <user name> -password <password> -encryption true

SqlDataSyncAgentCommand.exe -action "registerdatabase" -serverName localhost -databaseName testdb -authentication windows -encryption true

Zrušení registrace databáze

Když tento příkaz použijete k zrušení registrace databáze, zruší se zřízení databáze úplně. Pokud se databáze účastní jiných skupin synchronizace, tato operace přeruší ostatní skupiny synchronizace.

Využití

SqlDataSyncAgentCommand.exe -action unregisterdatabase -servername [on-premisesdatabase server name] -databasename [on-premisesdatabase name]

Příklad

SqlDataSyncAgentCommand.exe -action "unregisterdatabase" -serverName localhost -databaseName testdb

Aktualizace přihlašovacích údajů

Využití

SqlDataSyncAgentCommand.exe -action updatecredential -servername [on-premisesdatabase server name] -databasename [on-premisesdatabase name]  -username [domain\\username] -password [password] -authentication [sql or windows] -encryption [true or false]

Příklady

SqlDataSyncAgentCommand.exe -action "updatecredential" -serverName localhost -databaseName testdb -authentication sql -username <user name> -password <password> -encryption true

SqlDataSyncAgentCommand.exe -action "updatecredential" -serverName localhost -databaseName testdb -authentication windows -encryption true

Další kroky

Další informace o Synchronizace dat SQL najdete v následujících článcích: