Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro:SQL Server
Azure SQL Managed Instance
Vlastnosti snapshotů lze programově definovat a upravovat pomocí replikačních uložených procedur, kde uložené procedury závisí na typu publikace.
Pro nastavení vlastností snapshotu při vytváření snapshotu nebo transakční publikace
Na serveru Publisher spusťte sp_addpublication. Zadejte název publikace pro
@publication, hodnotu buď snímku nebo kontinuální pro@repl_freq, a jeden nebo více z následujících parametrů souvisejících se snímkem:-
@alt_snapshot_folder– zadejte cestu, pokud je snímek této publikace přístupný v tomto umístění místo výchozí složky snímků nebo navíc k ní. -
@compress_snapshot- Zadejte hodnotu True, pokud jsou soubory snímků v alternativní složce snímek komprimovány ve formátu Microsoft CAB. -
@pre_snapshot_script- specifikovat název souboru a celou cestu .sql souboru, který bude vykonán na Subscriber během inicializace před aplikací počátečního snapshotu. -
@post_snapshot_script- specifikovat název souboru a celou cestu .sql souboru, který bude vykonán u odběratele během inicializace po použití počátečního snímku. -
@snapshot_in_defaultfolder- Specifikovat hodnotu fals, pokud je snapshot dostupný pouze na nevýchozím místě.
Pro více informací o tvorbě publikací viz Vytvořit publikaci.
-
Pro nastavení vlastností snapshotu při vytváření merge publikace
Na serveru Publisher proveďte sp_addmergepublication. Zadejte název publikace pro
@publication, hodnotu buď snímku nebo kontinuální pro@repl_freq, a jeden nebo více z následujících parametrů souvisejících se snímkem:- alt_snapshot_folder - Specifikujte cestu, pokud je snapshot této publikace přístupný z tohoto místa místo nebo vedle výchozí složky snapshot.
-
@compress_snapshot- Zadejte hodnotu pravdy , pokud jsou soubory snímků v alternativní složce snímek komprimovány ve formátu CAB. -
@pre_snapshot_script- specifikovat název souboru a celou cestu .sql souboru, který bude vykonán na Subscriber během inicializace před aplikací počátečního snapshotu. -
@post_snapshot_script- specifikovat název souboru a celou cestu .sql souboru, který bude vykonán u odběratele během inicializace po použití počátečního snímku. -
@snapshot_in_defaultfolder- Specifikovat hodnotu fals, pokud je snapshot dostupný pouze na nevýchozím místě.
Pro více informací o tvorbě publikací viz Vytvořit publikaci.
Pro úpravu vlastností snímků existujícího snímku nebo transakční publikace
Na serveru Publisher v publikační databázi spusťte sp_changepublication. Zadejte hodnotu 1 pro
@force_invalidate_snapshota jednu z následujících hodnot pro@property:-
alt_snapshot_folder -also specifikovat novou cestu do alternativní složky snapshot pro
@value. -
compress_snapshot – také zadejte hodnotu true nebo false pro
@value, která určuje, zda jsou soubory snímků v alternativní složce pro snímky komprimovány ve formátu souborů CAB. -
pre_snapshot_script – také pro
@valuezadejte název souboru a úplnou cestu k souboru .sql, který bude spuštěn na odběrateli během inicializace před použitím počátečního snímku. -
post_snapshot_script – také pro
@valuespecifikovat název souboru a plnou cestu .sql souboru, který bude vykonán u odběratele během inicializace po aplikaci počátečního snímku. - snapshot_in_defaultfolder – také zadejte hodnotu true nebo false, která označuje, zda je snímek dostupný pouze v nevýchozím umístění.
-
alt_snapshot_folder -also specifikovat novou cestu do alternativní složky snapshot pro
(Volitelné) Na serveru Publisher v databázi publikace spusťte sp_changepublication_snapshot. Zadejte
@publicationa jeden či více parametrů plánování nebo parametrů přihlašovacích údajů zabezpečení, které se mění.Important
Pokud je to možné, vyzve uživatele, aby za běhu zadali přihlašovací údaje zabezpečení. Pokud musíte přihlašovací údaje uložit do souboru skriptu, musíte ho zabezpečit, abyste zabránili neoprávněnému přístupu.
Spusť Replication Snapshot Agent z příkazového řádku nebo spustit úkol Snapshot Agent a vygenerovat nový snapshot. Další informace naleznete v tématu Vytvoření a použití počátečního snímku.
Úprava vlastností snímku existující publikace slučování
Na serveru Publisher v databázi publikace spusťte sp_changemergepublication. Zadejte hodnotu 1 pro
@force_invalidate_snapshota jednu z následujících hodnot pro@property**:-
alt_snapshot_folder -also specifikovat novou cestu do alternativní složky snapshot pro
@value. -
compress_snapshot – také zadejte hodnotu true nebo false pro
@value, která určuje, zda jsou soubory snapshotu v alternativní složce snapshotů komprimovány ve formátu souboru CAB. -
pre_snapshot_script – také pro
@valuezadejte název souboru a úplnou cestu k souboru .sql, který bude spuštěn na odběrateli během inicializace před použitím počátečního snímku. -
post_snapshot_script – také pro
@valuespecifikovat název souboru a plnou cestu .sql souboru, který bude vykonán u odběratele během inicializace po aplikaci počátečního snímku. - snapshot_in_defaultfolder – zadejte také hodnotu true nebo false, která určuje, zda je snímek dostupný pouze v nevýchozím umístění.
-
alt_snapshot_folder -also specifikovat novou cestu do alternativní složky snapshot pro
Spusť Replication Snapshot Agent z příkazového řádku nebo spustit úkol Snapshot Agent a vygenerovat nový snapshot. Další informace naleznete v tématu Vytvoření a použití počátečního snímku.
Example
Tento příklad vytváří publikaci, která používá alternativní složku snapshotů a komprimovaný snapshot.
-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables
-- on the command line and in SQL Server Management Studio, see the
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".
--Declarations for adding a merge publication
DECLARE @publicationDB AS sysname;
DECLARE @publication AS sysname;
DECLARE @article AS sysname;
DECLARE @owner AS sysname;
DECLARE @snapshot_share AS sysname;
SET @publicationDB = N'AdventureWorks2022';
SET @publication = N'AdvWorksSalesOrdersMergeAltSnapshot';
SET @article = N'SpecialOffer';
SET @owner = N'Sales';
SET @snapshot_share = '\\' + $(InstanceName) + '\AltSnapshotFolder';
-- Enable merge replication on the publication database, using defaults.
USE master
EXEC sp_replicationdboption
@dbname = @publicationDB,
@optname=N'merge publish',
@value = N'true';
-- Create new merge publication with an alternate snapshot location.
USE [AdventureWorks]
EXEC sp_addmergepublication
-- required parameters
@publication = @publication,
@snapshot_in_defaultfolder = N'false',
@alt_snapshot_folder = @snapshot_share,
@compress_snapshot = N'true';
-- Create the snapshot job for the publication.
EXEC sp_addpublication_snapshot
@publication = @publication,
@job_login = $(Login),
@job_password = $(Password);
-- Add an article.
EXEC sp_addmergearticle
@publication = @publication,
@article = @article,
@source_object = @article,
@type = N'table',
@source_owner = @owner,
@destination_owner = @owner;
-- Start the snapshot job.
EXEC sp_startpublication_snapshot
@publication = @publication;
GO