Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: SQL Server
Azure SQL Managed Instance
Properti rekam jepret dapat ditentukan dan dimodifikasi secara terprogram menggunakan prosedur tersimpan replikasi, di mana prosedur tersimpan yang digunakan bergantung pada jenis publikasi.
Untuk mengonfigurasi properti rekam jepret saat membuat rekam jepret atau publikasi transaksional
Di Publisher, jalankan sp_addpublication. Tentukan nama publikasi untuk
@publication, nilai snapshot atau continuous untuk@repl_freq, dan satu atau lebih parameter terkait snapshot berikut:-
@alt_snapshot_folder- tentukan jalur jika rekam jepret untuk publikasi ini diakses dari lokasi tersebut alih-alih atau selain folder default rekam jepret. -
@compress_snapshot- tentukan nilai true jika file rekam jepret di folder rekam jepret alternatif dikompresi dalam format file Microsoft CAB. -
@pre_snapshot_script- tentukan nama file dan jalur lengkap dari file .sql yang akan dijalankan pada Subscriber selama inisialisasi sebelum snapshot awal diterapkan. -
@post_snapshot_script- tentukan nama file dan jalur lengkap file .sql yang akan dijalankan pada Subscriber saat inisialisasi setelah snapshot awal diterapkan. -
@snapshot_in_defaultfolder- tentukan nilai false jika rekam jepret hanya tersedia di lokasi non-default.
Untuk informasi selengkapnya tentang membuat publikasi, lihat Membuat Publikasi.
-
Untuk mengonfigurasi properti rekam jepret saat membuat publikasi gabungan
Di Publisher, jalankan sp_addmergepublication. Tentukan nama publikasi untuk
@publication, nilai snapshot atau continuous untuk@repl_freq, dan satu atau lebih parameter terkait snapshot berikut:- alt_snapshot_folder - tentukan jalur jika rekam jepret untuk publikasi ini diakses dari lokasi tersebut alih-alih atau selain folder default rekam jepret.
-
@compress_snapshot- tentukan nilai true jika file rekam jepret di folder rekam jepret alternatif dikompresi dalam format file CAB. -
@pre_snapshot_script- tentukan nama file dan jalur lengkap ke file .sql yang akan dijalankan pada Subscriber selama inisialisasi sebelum snapshot awal diterapkan. -
@post_snapshot_script- tentukan nama file dan jalur lengkap ke file .sql yang akan dijalankan pada Subscriber saat inisialisasi setelah snapshot awal diterapkan. -
@snapshot_in_defaultfolder- tentukan nilai false jika rekam jepret hanya tersedia di lokasi non-default.
Untuk informasi selengkapnya tentang membuat publikasi, lihat Membuat Publikasi.
Untuk memodifikasi properti rekam jepret dari rekam jepret atau publikasi transaksi yang ada
Di Publisher pada database publikasi, jalankan sp_changepublication. Tentukan nilai 1 untuk
@force_invalidate_snapshotdan salah satu nilai berikut untuk@property:-
alt_snapshot_folder -juga tentukan jalur baru ke folder rekam jepret alternatif untuk
@value. -
compress_snapshot - tentukan juga nilai true atau false untuk
@valuemenunjukkan apakah file rekam jepret di folder rekam jepret alternatif dikompresi dalam format file CAB. -
pre_snapshot_script - juga untuk
@valuetentukan nama file dan jalur lengkap ke file .sql yang akan dijalankan pada Subscriber selama inisialisasi sebelum snapshot awal diaplikasikan. -
post_snapshot_script - juga untuk
@valuetentukan nama file dan jalur lengkap ke file .sql yang akan dijalankan di Subscriber selama inisialisasi setelah snapshot awal diterapkan. - snapshot_in_defaultfolder - tentukan juga nilai benar atau salah untuk menunjukkan apakah rekam jepret hanya tersedia di lokasi non-default.
-
alt_snapshot_folder -juga tentukan jalur baru ke folder rekam jepret alternatif untuk
(Opsional) Di Publisher pada database publikasi, jalankan sp_changepublication_snapshot. Tentukan
@publicationdan satu atau lebih parameter penjadwalan atau kredensial keamanan yang sedang diubah.Penting
Jika memungkinkan, minta pengguna untuk memasukkan kredensial keamanan saat runtime. Jika Anda harus menyimpan kredensial dalam file skrip, Anda harus mengamankan file untuk mencegah akses yang tidak sah.
Jalankan Agen Snapshot Replikasi dari prompt perintah atau jalankan pekerjaan Agen Snapshot untuk menghasilkan cuplikan baru. Untuk informasi selengkapnya, lihat Membuat dan Menerapkan Rekam Jepret Awal.
Untuk memodifikasi properti rekam jepret dari publikasi gabungan yang sudah ada
Di Publisher pada database publikasi, jalankan sp_changemergepublication. Tentukan nilai 1 untuk
@force_invalidate_snapshotdan salah satu nilai berikut untuk@property**:-
alt_snapshot_folder -juga tentukan jalur baru ke folder rekam jepret alternatif untuk
@value. -
compress_snapshot - tentukan juga nilai true atau false untuk
@valuemenunjukkan apakah file rekam jepret di folder rekam jepret alternatif dikompresi dalam format file CAB. -
pre_snapshot_script - juga untuk
@valuetentukan nama file dan jalur lengkap ke file .sql yang akan dijalankan pada Subscriber selama inisialisasi sebelum snapshot awal diterapkan. -
post_snapshot_script - juga untuk
@valuetentukan nama file dan jalur lengkap ke file .sql yang akan dijalankan pada Subscriber selama inisialisasi setelah snapshot awal diterapkan. - snapshot_in_defaultfolder - tentukan juga nilai benar atau salah untuk menunjukkan apakah rekam jepret hanya tersedia di lokasi non-default.
-
alt_snapshot_folder -juga tentukan jalur baru ke folder rekam jepret alternatif untuk
Jalankan Agen Snapshot Replikasi dari prompt perintah atau mulai tugas Agen Snapshot untuk membuat snapshot baru. Untuk informasi selengkapnya, lihat Membuat dan Menerapkan Rekam Jepret Awal.
Contoh
Contoh ini membuat publikasi yang menggunakan folder rekam jepret alternatif dan rekam jepret terkompresi.
-- 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