Replikering till prenumeranter på minnesoptimerade tabeller

gäller för:SQL ServerAzure SQL Managed Instance

Tabeller som fungerar som prenumeranter för ögonblicksbildsreplikering och transaktionsreplikering, med undantag för peer-to-peer-transaktionsreplikering, kan konfigureras som minnesoptimerade tabeller. Andra replikeringskonfigurationer är inte kompatibla med minnesoptimerade tabeller. Den här funktionen är tillgänglig från och med SQL Server 2016 (13.x).

Två konfigurationer krävs

Konfigurera en minnesoptimerad tabell som prenumerant

  1. Skapa en transaktionspublikation. Mer information finns i Skapa en publikation.

  2. Lägg till artiklar i publikationen. Mer information finns i Definiera en artikel.

    Om du konfigurerar med hjälp av Transact-SQL ange @schema_option parametern för den sp_addarticle lagrade proceduren till
    0x40000000000.

  3. I artikelns egenskapsfönster anger du Aktivera minnesoptimering till true.

  4. Starta Snapshot Agent-jobbet för att generera den inledande ögonblicksbilden för den här publikationen. Mer information finns i Skapa och tillämpa den första ögonblicksbilden.

  5. Skapa nu en ny prenumeration. I guiden Ny prenumeration anger du Minnesoptimerad prenumeration till true.

Minnesoptimerade tabeller bör nu börja ta emot uppdateringar från utgivaren.

Konfigurera om en befintlig transaktionsreplikering

  1. Gå till prenumerationsegenskaper i Management Studio och ställ in Minnesoptimerad prenumerationtrue. Ändringarna tillämpas inte förrän prenumerationen har initierats på nytt.

    Om du konfigurerar med hjälp av Transact-SQL, anger du den nya parametern @memory_optimized i den lagrade proceduren sp_addsubscription till true.

  2. Gå till artikelegenskaperna för en publikation i Management Studio och ange Aktivera minnesoptimering till true.

    Om du konfigurerar med hjälp av Transact-SQL ange @schema_option parametern för den sp_addarticle lagrade proceduren till
    0x40000000000.

  3. Minnesoptimerade tabeller stöder inte klustrade index. Om du vill att replikeringen ska hantera detta genom att konvertera det till ett icke-klustrat index på destinationen anger du Konvertera klustrat index till icke-klustrat för minnesoptimerad artikel till sant.

    Om du konfigurerar med hjälp av Transact-SQL ange @schema_option parametern för den sp_addarticle lagrade proceduren till 0x0000080000000000.

  4. Återskapa ögonblicksbilden.

  5. Initiera prenumerationen igen.

Kommentarer och begränsningar

Endast enkelriktad transaktionsreplikering stöds. Peer-to-peer-transaktionsreplikering stöds inte.

Minnesoptimerade tabeller kan inte publiceras.

Replikeringstabeller på distributören kan inte konfigureras som minnesoptimerade tabeller.

Sammanslagningsreplikering kan inte innehålla minnesoptimerade tabeller.

Hos prenumeranten kan tabeller som ingår i transaktionsreplikeringen konfigureras som minnesoptimerade tabeller, men prenumeranttabellerna måste uppfylla kraven för minnesoptimerade tabeller. Detta kräver följande begränsningar.

Ändra en schemafil

  • Om du använder det minnesoptimerade tabellalternativet DURABILITY = SCHEMA_AND_DATA måste tabellen ha ett icke-grupperat primärnyckelindex.

  • ANSI_PADDING måste vara PÅ.