Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Managed Instance
Możesz skonfigurować tabele pełniące rolę subskrybentów replikacji migawkowej i replikacji transakcyjnej, z wyjątkiem replikacji transakcyjnej peer-to-peer, jako tabele zoptymalizowane pod kątem pamięci. Tabele zoptymalizowane pod względem pamięci nie są kompatybilne z innymi konfiguracjami replikacji. Ta funkcja jest dostępna od SQL Server 2016 (13.x).
Wymagane są dwie konfiguracje
Konfigurowanie bazy danych subskrybentów w celu obsługi replikacji do tabel zoptymalizowanych pod kątem pamięci
Ustaw właściwość @memory_optimized na prawdę, używając sp_addsubscription (Transact-SQL) lub sp_changesubscription (Transact-SQL).
Konfigurowanie artykułu w celu obsługi replikacji do tabel zoptymalizowanych pod kątem pamięci
@schema_option = 0x40000000000Ustaw opcję artykułu przy użyciu sp_addarticle (Transact-SQL) lub sp_changearticle (Transact-SQL).
Aby skonfigurować tabelę zoptymalizowaną pod kątem pamięci jako subskrybenta
Utwórz publikację transakcyjną. Aby uzyskać więcej informacji, zobacz Tworzenie publikacji.
Dodaj artykuły do publikacji. Aby uzyskać więcej informacji, zobacz
Define an Article (Definiowanie artykułu).W przypadku konfigurowania przy użyciu Transact-SQL ustaw parametr @schema_option procedury składowanej sp_addarticle na
0x40000000000.W oknie właściwości artykułu ustaw opcję Włącz optymalizację pamięci na true.
Uruchom zadanie Snapshot Agent, aby wygenerować początkową migawkę dla tej publikacji. Aby uzyskać więcej informacji, zobacz Tworzenie i stosowanie migawki początkowej.
Teraz utwórz nową subskrypcję. W Kreatorze nowej subskrypcji ustaw wartość Subskrypcja zoptymalizowana pod kątem pamięci na wartość true.
Tabele zoptymalizowane pod kątem pamięci powinny teraz zacząć otrzymywać aktualizacje od wydawcy.
Ponowne konfigurowanie istniejącej replikacji transakcji
Przejdź do właściwości subskrypcji w programie Management Studio i ustaw pozycję Subskrypcja zoptymalizowana pod kątem pamięci na wartość true. Zmiany nie są wprowadzane, dopóki nie zainicjalizujesz subskrypcji ponownie.
W przypadku konfigurowania przy użyciu Transact-SQL ustaw nowy parametr @memory_optimized procedury składowanej sp_addsubscription na true.
Przejdź do właściwości artykułu publikacji w programie Management Studio i ustaw opcję Włącz optymalizację pamięci na wartość true.
W przypadku konfigurowania przy użyciu Transact-SQL ustaw parametr @schema_option procedury składowanej sp_addarticle na
0x40000000000.Tabele zoptymalizowane pod pamięć nie obsługują klastrowanych indeksów. Aby replikacja obsłużyła to ograniczenie przez przekonwertowanie indeksu na indeks nieklastrowany w miejscu docelowym, ustaw opcję Konwertuj indeks klastrowany na nieklastrowany dla artykułu zoptymalizowanego pod kątem pamięci na wartość true.
W przypadku konfigurowania przy użyciu Transact-SQL ustaw parametr @schema_option procedury składowanej sp_addarticle na 0x0000080000000000.
Ponownie utwórz zrzut.
Ponowne inicjowanie subskrypcji.
Uwagi i ograniczenia
Obsługiwana jest tylko jednokierunkowa replikacja transakcyjna. Replikacja transakcyjna peer-to-peer nie jest obsługiwana.
Nie możesz publikować tabel zoptymalizowanych pod pamięć.
Nie można skonfigurować tabel replikacji na dystrybutorze jako tabel zoptymalizowanych pod kątem pamięci.
Nie można uwzględnić tabel zoptymalizowanych pod pamięć w replikacji scalania.
U subskrybenta można skonfigurować tabele uczestniczące w replikacji transakcyjnej jako zoptymalizowane pod kątem pamięci, ale tabele subskrybenta muszą spełniać wymagania dotyczące tabel zoptymalizowanych pod kątem pamięci. Ten wymóg nakłada następujące ograniczenia:
Tabele replikowane do tabel zoptymalizowanych pod kątem pamięci u subskrybenta mogą używać wyłącznie typów danych dozwolonych w tabelach zoptymalizowanych pod kątem pamięci. Aby uzyskać więcej informacji, zobacz Obsługiwane typy danych dla In-Memory OLTP.
Nie wszystkie funkcje Transact-SQL są obsługiwane w przypadku tabel zoptymalizowanych pod kątem pamięci. Aby uzyskać szczegółowe informacje, zobacz Transact-SQL Konstrukcje nieobsługiwane przez In-Memory OLTP .
Modyfikowanie pliku schematu
Jeśli użyjesz opcji
DURABILITY = SCHEMA_AND_DATAtabeli zoptymalizowanej pod pamięć , tabela musi mieć nieklasterowany indeks klucza głównego.ANSI_PADDINGmusi mieć wartośćON.