Udostępnij za pośrednictwem


Replikacja do usługi Azure SQL Database

Dotyczy: Baza danych SQL Usługi Azure SQL Database w sieci szkieletowej

Bazę danych AZURE SQL Database lub Fabric SQL Database można skonfigurować jako subskrybent wypychania w jednokierunkowej topologii replikacji transakcyjnej lub migawki z programu SQL Server i usługi Azure SQL Managed Instance.

Uwaga

W tym artykule opisano użycie replikacji transakcyjnej do wypychania danych do usługi Azure SQL Database lub usługi Fabric SQL Database. Ten artykuł ma zastosowanie w równym stopniu do usług Azure SQL Database i Fabric SQL Database, chyba że określono inaczej.

Nie jest ona powiązana z aktywną replikacją geograficzną — funkcją usługi Azure SQL Database, która umożliwia tworzenie kompletnych replik do odczytu poszczególnych baz danych.

Obsługiwane konfiguracje

Wersje

Aby pomyślnie przeprowadzić replikację do bazy danych w usłudze Azure SQL Database, wydawcy i dystrybutory programu SQL Server muszą używać co najmniej jednej z następujących wersji:

Publikowanie w dowolnej usłudze Azure SQL Database z bazy danych programu SQL Server jest obsługiwane przez następujące wersje programu SQL Server:

Uwaga

Próba skonfigurowania replikacji przy użyciu nieobsługiwanej wersji może spowodować wystąpienie błędu MSSQL_REPL20084 (proces nie może nawiązać połączenia z subskrybentem) i MSSQL_REPL40532 (nie można otworzyć nazwy> serwera <żądanej podczas logowania. Logowanie nie powiodło się.).

Aby korzystać ze wszystkich funkcji usługi Azure SQL Database, musisz używać najnowszych wersji programu SQL Server Management Studio (SSMS) i narzędzi SQL Server Data Tools.

Typy replikacji

Istnieją różne typy replikacji:

Replikacja Azure SQL Database Wystąpienie zarządzane Azure SQL
Transakcyjna w warstwie Standardowa Tak (tylko jako subskrybent) Tak
Migawka Tak (tylko jako subskrybent) Tak
Scal replikację Nie Nie
Komunikacja równorzędna Nie Nie
Dwukierunkowa Nie Tak
Subskrypcje z możliwością aktualizacji Nie Nie

Uwagi

  • Obsługiwane są tylko subskrypcje wypychane do usługi Azure SQL Database.
  • Replikację można skonfigurować przy użyciu programu SQL Server Management Studio lub wykonując instrukcje Języka Transact-SQL w wydawcy. Nie można skonfigurować replikacji przy użyciu witryny Azure Portal.
  • Aby uwierzytelnić:
    • Replikacja może używać tylko identyfikatorów logowania uwierzytelniania programu SQL Server do nawiązywania połączenia z usługą Azure SQL Database.
    • Replikacja może używać tylko uwierzytelniania identyfikatora Entra firmy Microsoft z jednostką usługiw celu nawiązania połączenia z bazą danych SQL Fabric.
  • Zreplikowane tabele muszą mieć klucz podstawowy.
  • Musisz mieć istniejącą subskrypcję platformy Azure.
  • Subskrybent usługi Azure SQL Database może znajdować się w dowolnym regionie.
  • Pojedyncza publikacja w programie SQL Server może obsługiwać zarówno subskrybentów usługi Azure SQL Database, jak i programu SQL Server (lokalnie i programu SQL Server na maszynie wirtualnej platformy Azure).
  • Zarządzanie replikacją, monitorowanie i rozwiązywanie problemów muszą być wykonywane z programu SQL Server, a nie z usługi Azure SQL Database.
  • Usługa SQL Database jest obsługiwana tylko @subscriber_type = 0 w sp_addsubscription usłudze SQL Database.
  • Usługa Azure SQL Database nie obsługuje replikacji dwukierunkowej, natychmiastowej, możliwej do zaktualizowania ani replikacji równorzędnej.

Architektura replikacji

Diagram przedstawia architekturę replikacji z usługą Azure SQL Database, która zawiera kilka klastrów subskrybentów w różnych regionach oraz lokalnych maszyn wirtualnych platformy Azure, które zawierają pliki wykonywalne Programu Publisher, pliku wykonywalnego logread i dystrybutora, które łączą się z klastrami zdalnymi.

Scenariusze

Typowy scenariusz replikacji

  1. Utwórz publikację replikacji transakcyjnej w bazie danych programu SQL Server.
  2. W programie SQL Server użyj Kreatora nowej subskrypcji lub instrukcji Języka Transact-SQL, aby utworzyć wypychanie do subskrypcji do usługi Azure SQL Database.
  3. W przypadku pojedynczych baz danych i baz danych w puli w usłudze Azure SQL Database początkowy zestaw danych to migawka utworzona przez agenta migawek i dystrybuowana i stosowana przez agenta dystrybucji. Za pomocą wydawcy usługi SQL Managed Instance możesz również użyć kopii zapasowej bazy danych, aby zainicjować subskrybenta usługi Azure SQL Database.

Scenariusz migracji danych

  1. Replikacja transakcyjna umożliwia replikowanie danych z bazy danych programu SQL Server do usługi Azure SQL Database.
  2. Przekieruj aplikacje klienta lub warstwy środkowej, aby zaktualizować kopię bazy danych.
  3. Zatrzymaj aktualizowanie wersji tabeli programu SQL Server i usuń publikację.

Ograniczenia

Replikacja z następującymi opcjami nie jest obsługiwana przez usługę Azure SQL Database:

  • Kopiowanie skojarzenia grup plików
  • Kopiowanie schematów partycjonowania tabel
  • Kopiowanie schematów partycjonowania indeksu
  • Kopiowanie statystyk zdefiniowanych przez użytkownika
  • Kopiowanie powiązań domyślnych
  • Kopiowanie powiązań reguły
  • Kopiowanie indeksów pełnotekstowych
  • Kopiowanie kodu XML XSD
  • Kopiowanie indeksów XML
  • Uprawnienia do kopiowania
  • Kopiowanie indeksów przestrzennych
  • Kopiowanie filtrowanych indeksów
  • Kopiowanie atrybutu kompresji danych
  • Kopiowanie atrybutu kolumny rozrzedzonej
  • Konwertowanie strumienia plików na typy danych MAX
  • Konwertowanie identyfikatora hierarchii na typy danych MAX
  • Konwertowanie typów danych przestrzennych na typy MAX
  • Kopiowanie właściwości rozszerzonych

Ograniczenia do określenia

  • Sortowanie kopii
  • Wykonywanie w serializowanej transakcji dostawcy usług

Przykłady

Utwórz publikację i subskrypcję wypychaną. Aby uzyskać więcej informacji, zobacz:

  • Tworzenie publikacji
  • Utwórz subskrypcję wypychaną przy użyciu nazwy serwera jako subskrybenta (na przykład N'azuresqldbdns.database.windows.net) i nazwy bazy danych Azure SQL Database jako docelowej bazy danych (na przykład AdventureWorks).

Zobacz też