Bekerja dengan Profil Agen Replikasi
Berlaku untuk:SQL ServerAzure SQL Managed Instance
Topik ini menjelaskan cara bekerja dengan Profil Agen Replikasi di SQL Server dengan menggunakan SQL Server Management Studio, Transact-SQL, atau Objek Manajemen Replikasi (RMO). Perilaku setiap agen replikasi dikontrol oleh sekumpulan parameter yang dapat diatur melalui profil agen. Setiap agen memiliki profil default, dan beberapa memiliki profil tambahan yang telah ditentukan; pada waktu tertentu, hanya satu profil yang aktif untuk agen.
Dalam Topik Ini
Untuk bekerja dengan Profil Agen Replikasi, gunakan:
Kotak dialog Akses Profil Agen
Menentukan profil untuk agen
Membuat profil
Mengubah profil
Menghapus profil
Membuat profil
Mengubah profil
Menghapus profil
Menggunakan profil agen selama sinkronisasi
Contoh T-SQL
Membuat profil
Mengubah profil
Menghapus profil
Tindak Lanjut:Setelah Mengubah Parameter Agen
Menggunakan SQL Server Management Studio
Untuk mengakses kotak dialog Profil Agen dari SQL Server Management Studio
- Pada halaman Umum kotak dialog Properti Distributor - <Distributor> , klik Default Profil.
Untuk mengakses kotak dialog Profil Agen dari Monitor Replikasi
Untuk membuka kotak dialog untuk semua agen, klik kanan Penerbit, lalu klik Profil Agen.
Untuk membuka kotak dialog untuk satu agen:
Perluas grup Publisher di panel kiri Monitor Replikasi, perluas Publisher, lalu klik publikasi.
Untuk profil Agen Distribusi dan Gabungkan Agen, klik kanan langganan pada tab Semua Langganan , lalu klik Profil Agen. Untuk agen lain, klik kanan agen pada tab Agen , lalu klik Profil Agen.
Untuk menentukan profil untuk agen
Jika kotak dialog Profil Agen menampilkan profil untuk lebih dari satu agen, pilih agen.
Pilih profil di kolom Default untuk baru kisi profil Agen. Secara default, profil hanya diterapkan ke agen untuk publikasi dan langganan baru.
Untuk menentukan bahwa semua agen dari tipe yang dipilih untuk publikasi atau langganan yang ada harus menggunakan profil ini, klik Ubah agen yang ada.
Untuk melihat dan mengedit parameter yang terkait dengan profil
Jika kotak dialog Profil Agen menampilkan profil untuk lebih dari satu agen, pilih agen.
Klik tombol properti (...) di samping profil.
Tampilkan parameter dan nilai dalam kotak <dialog Properti ProfilName>.
Parameter dalam profil yang ditentukan pengguna dapat diedit; parameter dalam profil sistem yang telah ditentukan sebelumnya tidak dapat.
Untuk melihat semua parameter untuk agen, kosongkan kotak centang Perlihatkan hanya parameter yang digunakan dalam profil ini. Untuk informasi tentang parameter agen, lihat tautan di akhir topik ini.
Klik Tutup.
Untuk membuat profil yang ditentukan pengguna
Jika kotak dialog Profil Agen menampilkan profil untuk lebih dari satu agen, pilih agen.
Klik Baru.
Dalam kotak dialog Inisialisasi Profil Agen Baru, pilih profil yang sudah ada untuk mendasarkan profil baru.
Dalam kotak dialog Profil Agen Baru, masukkan nilai dalam kotak teks Nama dan Deskripsi .
Ubah parameter untuk menyesuaikan profil. Untuk melihat semua parameter untuk agen, kosongkan kotak centang Perlihatkan hanya parameter yang digunakan dalam profil ini. Untuk informasi tentang parameter agen, lihat tautan di akhir topik ini.
Pilih OK.
Untuk menghapus profil yang ditentukan pengguna
Jika kotak dialog Profil Agen menampilkan profil untuk lebih dari satu agen, pilih agen.
Jika profil dikaitkan dengan satu atau beberapa agen, ubah profil untuk agen tersebut:
Pilih profil lain di kisi profil Agen.
Klik Ubah agen yang sudah ada.
Catatan
Ini akan mengubah profil untuk semua agen dari jenis yang dipilih untuk publikasi atau langganan yang ada, tidak hanya yang menggunakan profil yang ingin Anda hapus.
Pilih profil yang ingin Anda hapus, lalu klik Hapus.
Pilih OK.
Menggunakan T-SQL
Untuk membuat profil agen baru
Di Distributor, jalankan sp_add_agent_profile (Transact-SQL). Tentukan @name, nilai 1 untuk @profile_type, dan salah satu nilai berikut untuk @agent_type:
Jika profil ini akan menjadi profil default baru untuk jenis agen replikasinya, tentukan nilai 1 untuk @default. Pengidentifikasi untuk profil baru dikembalikan menggunakan parameter output @profile_id . Ini membuat profil baru dengan sekumpulan parameter profil berdasarkan profil default untuk jenis agen yang diberikan.
Setelah profil baru dibuat, tambahkan, hapus, atau ubah parameter default untuk menyesuaikan profil.
Untuk mengubah profil agen yang ada
Di Distributor, jalankan sp_help_agent_profile (Transact-SQL). Tentukan salah satu nilai berikut untuk @agent_type:
Ini mengembalikan semua profil untuk jenis agen yang ditentukan. Perhatikan nilai profile_id dalam tataan hasil agar profil berubah.
Di Distributor, jalankan sp_help_agent_parameter (Transact-SQL). Tentukan pengidentifikasi profil dari langkah 1 untuk @profile_id. Ini mengembalikan semua parameter untuk profil. Perhatikan nama parameter apa pun untuk dimodifikasi atau dihapus dari profil.
Untuk mengubah nilai parameter dalam profil, jalankan sp_change_agent_parameter (Transact-SQL). Tentukan pengidentifikasi profil dari langkah 1 untuk @profile_id, nama parameter yang akan diubah untuk @parameter_name, dan nilai baru untuk parameter untuk @parameter_value.
Catatan
Anda tidak dapat mengubah profil agen yang ada untuk menjadi profil default untuk agen. Anda harus membuat profil baru sebagai profil default, seperti yang ditunjukkan pada prosedur sebelumnya.
Untuk menghapus parameter dari profil, jalankan sp_drop_agent_parameter (Transact-SQL). Tentukan pengidentifikasi profil dari langkah 1 untuk @profile_id dan nama parameter yang akan dihapus untuk @parameter_name.
Untuk menambahkan parameter baru ke profil, Anda harus melakukan hal berikut:
Kueri tabel MSagentparameterlist (Transact-SQL) di Distributor untuk menentukan parameter profil mana yang dapat diatur untuk setiap jenis agen.
Di Distributor, jalankan sp_add_agent_parameter (Transact-SQL). Tentukan pengidentifikasi profil dari langkah 1 untuk @profile_id, nama parameter yang valid untuk ditambahkan untuk @parameter_name, dan nilai parameter untuk @parameter_value.
Untuk menghapus profil agen
Di Distributor, jalankan sp_help_agent_profile (Transact-SQL). Tentukan salah satu nilai berikut untuk @agent_type:
Ini mengembalikan semua profil untuk jenis agen yang ditentukan. Perhatikan nilai profile_id dalam tataan hasil agar profil dihapus.
Di Distributor, jalankan sp_drop_agent_profile (Transact-SQL). Tentukan pengidentifikasi profil dari langkah 1 untuk @profile_id.
Untuk menggunakan profil agen selama sinkronisasi
Di Distributor, jalankan sp_help_agent_profile (Transact-SQL). Tentukan salah satu nilai berikut untuk @agent_type:
Ini mengembalikan semua profil untuk jenis agen yang ditentukan. Perhatikan nilai profile_name dalam tataan hasil untuk profil yang akan digunakan.
Jika agen dimulai dari pekerjaan agen, edit langkah pekerjaan yang memulai agen untuk menentukan nilai profile_name yang diperoleh di langkah 1 setelah parameter baris perintah -ProfileName . Untuk informasi selengkapnya, lihat Menampilkan dan Memodifikasi Parameter Prompt Perintah Agen Replikasi (SQL Server Management Studio).
Saat memulai agen dari prompt perintah, tentukan nilai profile_name yang diperoleh di langkah 1 setelah parameter baris perintah -ProfileName .
Contoh (Transact-SQL)
Contoh ini membuat profil kustom untuk Merge Agent bernama custom_merge, mengubah nilai parameter -UploadReadChangesPerBatch, menambahkan parameter -ExchangeType baru, dan mengembalikan informasi pada profil yang dibuat.
DECLARE @profilename AS sysname;
DECLARE @profileid AS int;
SET @profilename = N'custom_merge';
-- Create a temporary table to hold the returned
-- Merge Agent profiles.
CREATE TABLE #profiles (
profile_id int,
profile_name sysname,
agent_type int,
[type] int,
description varchar(3000),
def_profile bit)
INSERT INTO #profiles (profile_id, profile_name,
agent_type, [type],description, def_profile)
EXEC sp_help_agent_profile @agent_type = 4;
SET @profileid = (SELECT profile_id FROM #profiles
WHERE profile_name = @profilename);
IF (@profileid IS NOT NULL)
BEGIN
EXEC sp_drop_agent_profile @profileid;
END
DROP TABLE #profiles
-- Add a new merge agent profile.
EXEC sp_add_agent_profile @profile_id = @profileid OUTPUT,
@profile_name = @profilename, @agent_type = 4,
@description = N'custom merge profile';
-- Change the value of uploadreadchangesperbatch in the profile.
EXEC sp_change_agent_parameter @profile_id = @profileid,
@parameter_name = N'-UploadReadChangesPerBatch', @parameter_value = 50;
-- Add a new parameter ExchangeType the profile.
EXEC sp_add_agent_parameter @profile_id = @profileid,
@parameter_name = N'-ExchangeType', @parameter_value = 1;
-- Verify the new profile.
EXEC sp_help_agent_parameter @profileid;
GO
Menggunakan RMO
Untuk membuat profil agen baru
Buat koneksi ke Distributor dengan menggunakan instans ServerConnection kelas.
Membuat instans kelas AgentProfile.
Atur properti berikut pada objek:
Name - nama untuk profil.
AgentTypeAgentType- nilai yang menentukan jenis agen replikasi tempat profil sedang dibuat.
ConnectionContext - yang ServerConnection dibuat di langkah 1.
(Opsional) Description - deskripsi profil.
(Opsional) Default - atur properti ini ke true jika semua pekerjaan agen baru untuk ini AgentType akan menggunakan profil ini secara default.
Create Panggil metode untuk membuat profil di server.
Setelah profil ada di server, Anda dapat menyesuaikannya dengan menambahkan, menghapus, atau mengubah nilai parameter agen replikasi.
Untuk menetapkan profil ke pekerjaan agen replikasi yang ada, panggil AssignToAgent metode . Berikan nama database distribusi untuk distributionDBName dan ID pekerjaan untuk agentID.
Untuk mengubah profil agen yang ada
Buat koneksi ke Distributor dengan menggunakan instans ServerConnection kelas.
Membuat instans kelas ReplicationServer. Teruskan objek yang ServerConnection dibuat di langkah 1.
Panggil LoadProperties metode. Jika metode ini mengembalikan false, verifikasi bahwa Distributor ada.
Panggil EnumAgentProfiles metode. AgentType Teruskan nilai untuk mempersempit profil yang dikembalikan ke jenis agen replikasi tertentu.
Dapatkan objek yang diinginkan AgentProfile dari yang dikembalikan ArrayList, di mana Name properti objek cocok dengan nama profil.
Panggil salah satu metode AgentProfile berikut untuk mengubah profil:
AddParameter - menambahkan parameter yang didukung ke profil, di mana nama adalah nama parameter dan nilai agen replikasi adalah nilai yang ditentukan. Untuk menghitung semua parameter agen yang didukung untuk jenis agen tertentu, panggil EnumParameterInfo metode . Metode ini mengembalikan ArrayList objek AgentProfileParameterInfo yang mewakili semua parameter yang didukung.
RemoveParameter - menghapus parameter yang ada dari profil, di mana nama adalah nama parameter agen replikasi. Untuk menghitung semua parameter agen saat ini yang ditentukan untuk profil, panggil EnumParameters metode . Metode ini mengembalikan ArrayList objek AgentProfileParameter yang mewakili parameter yang ada untuk profil ini.
ChangeParameter - mengubah pengaturan parameter yang ada di profil, di mana nama adalah nama parameter agen dan newValue adalah nilai yang parameternya diubah. Untuk menghitung semua parameter agen saat ini yang ditentukan untuk profil, panggil EnumParameters metode . Metode ini mengembalikan ArrayList objek AgentProfileParameter yang mewakili parameter yang ada untuk profil ini. Untuk menghitung semua pengaturan parameter agen yang didukung, panggil EnumParameterInfo metode . Metode ini mengembalikan ArrayList objek AgentProfileParameterInfo yang mewakili nilai yang didukung untuk semua parameter.
Untuk menghapus profil agen
Buat koneksi ke Distributor dengan menggunakan instans ServerConnection kelas.
Membuat instans kelas AgentProfile. Atur nama profil untuk Name dan ServerConnection dari langkah 1 untuk ConnectionContext.
Panggil LoadProperties metode. Jika metode ini mengembalikan false, nama yang ditentukan salah atau profil tidak ada di server.
Verifikasi bahwa Type properti diatur ke User, yang menunjukkan profil pelanggan. Anda tidak boleh menghapus profil yang memiliki nilai System untuk Type.
Remove Panggil metode untuk menghapus profil yang ditentukan pengguna yang diwakili oleh objek ini dari server.
Tindak Lanjut: Setelah Mengubah Parameter Agen
Perubahan parameter agen berlaku saat agen dimulai lain kali. Jika agen berjalan terus menerus, Anda harus menghentikan dan memulai ulang agen. Dimulai dengan SQL Server 2017 CU3, beberapa perubahan parameter agen berlaku tanpa harus menghidupkan ulang Agen.
Lihat Juga
Profil Agen Replikasi
Agen Rekam Jepret Replikasi
Agen Pembaca Log Replikasi
Agen Distribusi Replikasi
Agen Penggabungan Replikasi
Agen Pembaca Antrean Replikasi
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk