Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Managed Instance
Det finns flera alternativ att specificera när man initierar en prenumeration med en snapshot.
Ange ögonblicksbildformat (SQL Server Management Studio)
Ange snapshotformatet på Snapshot-sidan i dialogrutan Publication Properties - <Publication> . Mer information om hur du öppnar den här dialogrutan finns i Visa och ändra publikationsegenskaper.
För att specificera snapshotformatet
På sidan Snapshot i dialogrutan Publikationsegenskaper - <Publikation>, välj Native SQL Server – alla prenumeranter måste vara servrar som kör SQL Server eller Character – krävs om en Publisher eller prenumerant inte kör SQL Server.
Note
Det rekommenderas att välja det ursprungliga formatet om inte denna publikation måste stödja prenumerationer på en SQL Server Compact-databas eller en icke-SQL Server-databas.
Välj OK.
Platser för mappar för ögonblicksbilder
Standardplats för snapshot
Ange standardplatsen för snapshot på sidan Snapshot-mappen i Configure Distribution Wizard. För mer information om hur man använder denna guide, se Konfigurera publicering och distribution. Om du skapar en publikation på en server som inte är konfigurerad som en distributör, ange en standardplats för snapshot på sidan Snapshot Folder i New Publication Wizard. För mer information om att använda denna guide, se Skapa en publikation.
Ändra standardplatsen för snapshot på Publicist-sidan i dialogrutan Distributor Properties - <Distributor> . För mer information, se Visa och modifiera distributör och Publisher Properties. Ställ in snapshot-mappen för varje publikation i dialogrutan Publikationsegenskaper - <Publikation> . Mer information finns i Visa och ändra publikationsegenskaper.
För att ändra standardplatsen för snapshot
På sidan Publishers i dialogrutan Distributor Properties - <Distributor>, klicka på egenskapsknappen (...) för den Publisher där du vill ändra standardplatsen för snapshot.
I dialogrutan Publisher Properties - <Publisher>, ange ett värde för egenskapen Default Snapshot Folder.
Note
Snapshot Agent måste ha skrivbehörigheter för den katalog du anger, och Distribution Agent eller Merge Agent måste ha läsbehörigheter. Om pull-prenumerationer används måste du ange en delad katalog som en universell namngivningskonvention (UNC)-väg, såsom \\computername\snapshot. Mer information finns i Skydda mappen Ögonblicksbild.
Välj OK.
Alternativa snapshot-platser
Alternativa snapshot-platser gör det möjligt att lagra snapshot-filer på en annan plats än, eller utöver standardplatsen, som vanligtvis finns på Distributoren. Alternativa platser kan vara på en annan server, på en nätverksenhet eller på flyttbara medier som CD-ROMs eller flyttbara diskar.
Alternativa platser för ögonblicksbilder lagras som en egenskap hos publikationen. Eftersom den alternativa snapshotplatsen är en publiceringsegenskap kan Distribution Agent och Merge Agent hitta rätt snapshot som en del av synkroniseringsprocessen.
Om du vill ange en alternativ snapshot-mappplats eller om du vill komprimera snapshot-filer, skapa publikationen utan att omedelbart skapa den initiala snapshoten, ställ in publiceringsegenskaperna för snapshot-platsen och kör sedan Snapshot Agent för den publikationen. Om du ändrar den alternativa platsen efter att ha skapat den initiala snapshoten, kommer platsen för någon genererad snapshot för publikationen inte att flyttas till den nya alternativa platsen. I detta fall, beroende på publiceringsinställningarna, kan Merge Agent eller Distribution Agent kanske inte hitta snapshotfilerna på den nya alternativa platsen.
Note
Ange inte en alternativ plats (använd dialogrutan Publikationsegenskaper eller sp_changepublication (Transact-SQL)) som är densamma som standardplatsen för snapshot-mappen.
Försiktighet
Använd inte både WebSync och alternativa snapshot-mappplatser samtidigt.
Använd SQL Server Management Studio
På sidan Snapshot i dialogrutan Publikationsegenskaper - <Publikation> :
Välj Lägg filer i följande mapp och klicka sedan på Bläddra för att navigera till en katalog, eller ange sökvägen till katalogen där snapshot-filerna ska lagras.
Note
Snapshot Agent måste ha skrivbehörigheter för den katalog du anger, och Distribution Agent eller Merge Agent måste ha läsbehörigheter. Om pull-prenumerationer används måste du ange en delad katalog som en universell namngivningskonvention (UNC)-väg, såsom \\computername\snapshot. Mer information finns i Skydda mappen Ögonblicksbild.
Rensa Lägg filer i standardmappen om du inte kräver att snapshot-filer skrivs till båda platserna.
För att komprimera snapshot-filerna, välj Komprimera snapshot-filer på denna plats. Komprimering används vanligtvis för anslutningar med låg bandbredd och alternativa snapshot-platser på flyttbara medier, såsom en CD-ROM.
Välj OK.
Använda Transact-SQL
När du konfigurerar snapshot-egenskaper (Transact-SQL-programmering för replikering) anger du värdet för snapshot_in_defaultfolder till false.
Komprimerade ögonblicksbilder
Att komprimera snapshot-filer är lämpligt när du överför snapshots över ett långsamt nätverk eller sparar dem på ett flyttbart medium och en okomprimerad snapshot är för stor för att få plats på mediet. Att komprimera snapshotfiler är användbart i dessa situationer, men komprimering ökar tiden det tar att generera och tillämpa snapshoten.
Komprimerade snapshot-filer skrivs i Microsoft CAB-filformat, som kan komprimera filer på 2 GB eller mindre (om snapshotfilerna är större än 2 GB kan de inte komprimeras). För att komprimera filer måste de skrivas till en alternativ snapshot-mapp (filer skrivna till standard-snapshot-mappen kan inte komprimeras).
Filer okomprimeras på platsen där Distribution Agent eller Merge Agent körs; pull-prenumerationer används vanligtvis med komprimerade snapshots så att filer okomprimeras hos prenumeranten. När prenumeranten tar emot en komprimerad fil skrivs filen initialt till en tillfällig plats. Efter att den komprimerade filen kopierats till Subscriber dekomprimeras snapshot-filerna i den komprimerade filen i ordning, en fil i taget, av CAB-verktyget. Utrymmet som krävs hos prenumeranten är storleken på den komprimerade filen plus den största okomprimerade filen.
Note
Komprimerade ögonblicksbilder kan i vissa fall förbättra prestanda för överföring av ögonblicksbildfiler i nätverket. Komprimering av ögonblicksbilden kräver dock ytterligare bearbetning av Snapshot Agent när ögonblicksbildfilerna genereras och av Distribution Agent eller Merge Agent när ögonblicksbildfilerna används. Detta kan göra genereringen av ögonblicksbilder långsammare och öka den tid det tar att tillämpa en ögonblicksbild i vissa fall. Dessutom kan komprimerade ögonblicksbilder inte återupptas om ett nätverksfel inträffar. därför är de inte lämpliga för otillförlitliga nätverk. Tänk noga på dessa kompromisser när du använder komprimerade ögonblicksbilder i ett nätverk.
Använd SQL Server Management Studio
På sidan Snapshot i dialogrutan Publikationsegenskaper - <Publikation> :
Välj Lägg filer i följande mapp och klicka sedan på Bläddra för att navigera till en katalog, eller ange sökvägen till katalogen där snapshot-filerna ska lagras.
Note
Snapshot Agent måste ha skrivbehörigheter för den katalog du anger, och Distribution Agent eller Merge Agent måste ha läsbehörigheter. Om pull-prenumerationer används måste du ange en delad katalog som en universell namngivningskonvention (UNC)-väg, såsom \\computername\snapshot. För mer information, se Säkra snapshot-mappen
Rensa Lägg filer i standardmappen om du inte kräver att snapshot-filer skrivs till båda platserna.
Note
Om denna kryssruta är markerad komprimeras inte filerna som lagras i standardmappen. Komprimerade filer kan endast lagras på den alternativa plats som angavs i föregående steg.
Välj Komprimera snapshot-filer i denna mapp.
Välj OK.
Använda Transact-SQL
När du konfigurerar snapshot-egenskaper, ange värdet compress_snapshot vara True.
Kör skript före och efter att snapshot har applicerats
Du kan specificera skript som ska köras på prenumeranten före eller efter att snapshoten appliceras. Skript kan användas av olika anledningar, såsom att skapa inloggningar och scheman (objektägare) hos varje prenumerant.
Du anger en filplats för varje skript, och Snapshot Agent kopierar skriptfilerna till den aktuella snapshot-mappen varje gång snapshot-bearbetning sker. Distribution Agent eller Merge Agent kör för-snapshot-skriptet före något av de replikerade objektskripten när en snapshot appliceras. Distribution Agent eller Merge Agent kör post-snapshot-skriptet efter att alla andra replikerade objektskript och data har applicerats. När snapshot-applikationen är klar och skriptfiler körs framgångsrikt, tas skriptfilerna bort från arbetskatalogen på Subscriber.
Skriptet körs genom att starta sqlcmd-verktyget . Innan du distribuerar ett skript, kör det med sqlcmd för att säkerställa att det körs som förväntat. Innehållet i skript som körs före och efter att snapshoten appliceras måste vara upprepbart. Till exempel, om du skapar en tabell i skriptet bör du först kontrollera att den finns och vidta lämpliga åtgärder om den finns. Skriptet måste vara upprepbart eftersom om du behöver ominitiera en prenumeration där skriptet redan har applicerats, kommer skriptet att tillämpas igen när den nya snapshoten appliceras vid ominitialiseringen.
Om du komprimerar snapshot-filen (genom att lägga den i Microsoft CAB-format) komprimeras också skripten och placeras i CAB-filen. Efter att den komprimerade snapshot-filen överförts till Prenumeranten och dekomprimerats till en fungerande katalog på Prenumeranten, exekveras vilket skript som helst som anges som ett pre-snapshot-skript. På samma sätt dekomprimeras och utförs alla post-snapshot-skript hos prenumeranten som det sista steget i tillämpningen av snapshoten.
Exekvera ett skript
- På sidan Snapshot i dialogrutan Publikationsegenskaper - <Publikation> :
För att specificera ett skript som ska köras innan snapshoten appliceras, klicka på Bläddra för att navigera till skriptet, eller ange en väg till skriptet i textrutan Innan du applicerar snapshoten, kör detta skript .
Note
Distribution Agent eller Merge Agent måste ha läsbehörighet för den katalog du anger. Om pull-prenumerationer används måste du ange en delad katalog som en universell namngivningskonvention (UNC)-väg, såsom \\computername\scripts\myscript.sql.
För att specificera ett skript som ska köras efter att snapshoten har applicerats, klicka på Bläddra för att navigera till skriptet, eller ange en UNC-väg till skriptet i textrutan Efter att ha applicerat snapshoten, kör textrutan för detta skript .
- Välj OK.