Udostępnij za pośrednictwem


Replikacja do usługi Azure SQL Database

Dotyczy:Baza danych Azure SQLBaza danych SQL w Fabric

Można skonfigurować usługę Azure SQL Database lub Fabric SQL Database jako subskrybenta powiadomień w jednokierunkowej topologii replikacji transakcyjnej lub migawkowej z SQL Server i 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.

To nie jest związane z aktywną replikacją geograficzną, funkcją usługi Azure SQL Database, która umożliwia tworzenie kompletnych, możliwych do odczytu replik 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:

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.

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

Publikowanie do Fabric SQL Database z bazy danych programu SQL Server jest obsługiwane przez następujące wersje programu SQL Server:

Typy replikacji

Istnieją różne typy replikacji:

Replikacja Azure SQL Database Zarządzana instancja Azure SQL
Standardowa transakcyjna Tak (tylko jako subskrybent) Tak
Migawka Tak (tylko jako subskrybent) Tak
Replikacja łącząca Nie Nie
Peer-to-peer Nie Nie
Dwukierunkowa Nie Tak
Subskrypcje z możliwością aktualizacji Nie Nie

Uwagi

  • Obsługiwane są tylko subskrypcje przesyłane do usługi Azure SQL Database.
  • Replikację można skonfigurować przy użyciu programu SQL Server Management Studio lub wykonując instrukcje Transact-SQL na serwerze wydającym. Nie można skonfigurować replikacji przy użyciu witryny Azure Portal.
  • Aby uwierzytelnić:
  • 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.
  • Tylko @subscriber_type = 0 jest obsługiwane w sp_addsubscription dla bazy danych SQL.
  • Usługa Azure SQL Database nie obsługuje dwukierunkowej, natychmiastowej, aktualizowalnej ani równorzędnej replikacji.

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 lokalne maszyny wirtualne Azure, które zawierają Program Publisher, plik wykonywalny Logread oraz dystrybutory, 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 Transact-SQL, aby utworzyć subskrypcję typu push 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 rozprowadzana oraz stosowana przez agenta dystrybucji. Za pomocą wydawcy usługi SQL Managed Instance możesz również użyć kopii zapasowej bazy danych, aby zasiać subskrybenta bazy danych Azure SQL.

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

Następujące opcje replikacji nie są obsługiwane przez usługę Azure SQL Database:

  • Skopiuj skojarzenia grup plików
  • Kopiowanie schematów partycjonowania tabel
  • Kopiowanie schematów partycjonowania indeksów
  • Kopiowanie statystyk zdefiniowanych przez użytkownika
  • Kopiowanie powiązań domyślnych
  • Skopiuj powiązania reguł
  • Kopiowanie indeksów pełnotekstowych
  • Skopiuj 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 hierarchyid 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ę Push przy użyciu nazwy serwera jako subskrybenta (na przykład 'azuresqldbdns.database.windows.net') i nazwy bazy danych Azure SQL Database jako docelowej bazy danych (na przykład AdventureWorks).

Zobacz też