Bagikan melalui


Agen Pembaca Log Replikasi

Berlaku untuk:SQL ServerAzure SQL Managed Instance

Agen Pembaca Log Replikasi adalah executable yang memantau log transaksi setiap database yang dikonfigurasi untuk replikasi transaksional dan menyalin transaksi yang ditandai untuk replikasi dari log transaksi ke database distribusi.

Catatan

Parameter dapat ditentukan dalam urutan apa pun. Ketika parameter opsional tidak ditentukan, nilai yang telah ditentukan sebelumnya berdasarkan profil agen default digunakan.

Sintaks

  
logread [-?]   
-Publisher server_name[\instance_name]   
-PublisherDB publisher_database   
[-Continuous]  
[-DefinitionFile def_path_and_file_name]  
[-Distributor server_name[\instance_name]]  
[-DistributorLogin distributor_login]  
[-DistributorPassword distributor_password]  
[-DistributorSecurityMode [0|1]]  
[-EncryptionLevel [0|1|2]]  
[-ExtendedEventConfigFile configuration_path_and_file_name]  
[-HistoryVerboseLevel [0|1|2]]  
[-KeepAliveMessageInterval keep_alive_message_interval_seconds]  
[-LoginTimeOut login_time_out_seconds]  
[-LogScanThreshold scan_threshold]  
[-MaxCmdsInTran number_of_commands]  
[-MessageInterval message_interval]
[-MultiSubnetFailover [0|1]]
[-Output output_path_and_file_name]  
[-OutputVerboseLevel [0|1|2|3|4]]  
[-PacketSize packet_size]  
[-PollingInterval polling_interval]  
[-ProfileName profile_name]   
[-PublisherFailoverPartner server_name[\instance_name] ]  
[-PublisherSecurityMode [0|1]]  
[-PublisherLogin publisher_login]  
[-PublisherPassword publisher_password]   
[-QueryTimeOut query_time_out_seconds]  
[-ReadBatchSize number_of_transactions]   
[-ReadBatchThreshold read_batch_threshold]  
[-RecoverFromDataErrors]  

Argumen

-?
Menampilkan informasi penggunaan.

-Publisherserver_name[\instance_name]
Adalah nama Penerbit. Tentukan server_name untuk instans default Microsoft SQL Server di server tersebut. Tentukan instance_name server_name\ untuk instans SQL Server bernama di server tersebut.

-PublisherDBpublisher_database
Adalah nama database Publisher.

-Terus menerus
Menentukan apakah agen mencoba melakukan polling transaksi yang direplikasi secara berkelanjutan. Jika ditentukan, agen melakukan polling transaksi yang direplikasi dari sumber pada interval polling bahkan jika tidak ada transaksi yang tertunda.

-DefinitionFiledef_path_and_file_name
Adalah jalur file definisi agen. File definisi agen berisi argumen baris perintah untuk agen. Konten file diurai sebagai file yang dapat dieksekusi. Gunakan tanda kutip ganda (") untuk menentukan nilai argumen yang berisi karakter arbitrer.

-Server_name distributor[\instance_name]
Adalah nama Distributor. Tentukan server_name untuk instans default SQL Server di server tersebut. Tentukan instance_name server_name\ untuk instans SQL Server bernama di server tersebut.

-DistributorLogindistributor_login
Adalah nama login Distributor.

-DistributorPassworddistributor_password
Adalah kata sandi Distributor.

-DistributorSecurityMode [ 0| 1]
Menentukan mode keamanan Distributor. Nilai 0 menunjukkan Mode Autentikasi SQL Server (default), dan nilai 1 menunjukkan Mode Autentikasi Microsoft Windows.

-EncryptionLevel [ 0 | 1 | 2 ]
Adalah tingkat Keamanan Lapisan Transportasi (TLS), yang sebelumnya dikenal sebagai Secure Sockets Layer (SSL), enkripsi yang digunakan oleh Agen Pembaca Log saat membuat koneksi.

Nilai EncryptionLevel Deskripsi
0 Menentukan bahwa TLS tidak digunakan.
1 Menentukan bahwa TLS digunakan, tetapi agen tidak memverifikasi bahwa sertifikat server TLS/SSL ditandatangani oleh penerbit tepercaya.
2 Menentukan bahwa TLS digunakan, dan bahwa sertifikat diverifikasi.

Catatan

Sertifikat TLS/SSL yang valid ditentukan dengan nama domain SQL Server yang sepenuhnya memenuhi syarat. Agar agen berhasil tersambung saat mengatur -EncryptionLevel ke 2, buat alias di SQL Server lokal. Parameter 'Nama Alias' harus berupa nama server dan parameter 'Server' harus diatur ke nama SQL Server yang sepenuhnya memenuhi syarat.

Untuk informasi selengkapnya, lihat Menampilkan dan mengubah pengaturan keamanan replikasi.

-ExtendedEventConfigFileconfiguration_path_and_file_name
Menentukan jalur dan nama file untuk file konfigurasi XML peristiwa yang diperluas. File konfigurasi peristiwa yang diperluas memungkinkan Anda mengonfigurasi sesi dan mengaktifkan peristiwa untuk pelacakan.
Penggunaan internal saja.

-HistoryVerboseLevel [ 0| 1| 2]
Menentukan jumlah riwayat yang dicatat selama operasi pembaca log. Anda dapat meminimalkan efek performa pengelogan riwayat dengan memilih 1.

Nilai HistoryVerboseLevel Deskripsi
0
1 Default. Selalu perbarui pesan riwayat sebelumnya dengan status yang sama (startup, progress, success, dan sebagainya). Jika tidak ada rekaman sebelumnya dengan status yang sama, sisipkan rekaman baru.
2 Sisipkan rekaman riwayat baru kecuali rekaman untuk hal-hal seperti pesan diam atau pesan pekerjaan yang berjalan lama, dalam hal ini memperbarui rekaman sebelumnya.

-KeepAliveMessageIntervalkeep_alive_message_interval_seconds
Adalah jumlah detik sebelum utas riwayat memeriksa apakah salah satu koneksi yang ada sedang menunggu respons dari server. Nilai ini dapat dikurangi untuk menghindari agen pemeriksaan menandai Agen Pembaca Log sebagai tersangka saat menjalankan batch yang berjalan lama. Defaultnya adalah 300 detik.

-LoginTimeOutlogin_time_out_seconds
Adalah jumlah detik sebelum waktu masuk habis. Defaultnya adalah 15 detik.

-LogScanThresholdscan_threshold
Penggunaan internal saja.

-MaxCmdsInTrannumber_of_commands
Menentukan jumlah maksimum pernyataan yang dikelompokkan ke dalam transaksi saat Pembaca Log menulis perintah ke database distribusi. Menggunakan parameter ini memungkinkan Agen Pembaca Log dan Agen Distribusi untuk membagi transaksi besar (terdiri dari banyak perintah) di Penerbit menjadi beberapa transaksi yang lebih kecil saat diterapkan di Pelanggan. Menentukan parameter ini dapat mengurangi ketidakcocokan di Distributor dan mengurangi latensi antara Penerbit dan Pelanggan. Karena transaksi asli diterapkan dalam unit yang lebih kecil, Pelanggan dapat mengakses baris transaksi Penerbit logis besar sebelum akhir transaksi asli, melanggar atomitas transaksional yang ketat. Defaultnya adalah 0, yang mempertahankan batas transaksi Publisher.

Catatan

Parameter ini diabaikan untuk publikasi non-SQL Server. Untuk informasi selengkapnya, lihat bagian "Mengonfigurasi Pekerjaan Set Transaksi" di Penyetelan Performa untuk Penerbit Oracle.

Peringatan

MaxCmdsInTran tidak dirancang untuk selalu diaktifkan. Ada untuk mengatasi kasus di mana seseorang secara tidak sengaja melakukan sejumlah besar operasi DML dalam satu transaksi (menyebabkan keterlambatan dalam distribusi perintah sampai seluruh transaksi berada dalam database distribusi, kunci ditahan, dll.). Jika Anda secara rutin jatuh ke dalam situasi ini, tinjau aplikasi Anda dan temukan cara untuk mengurangi ukuran transaksi.

Peringatan

MaxCmdsInTran tidak didukung jika database publikasi yang diberikan diaktifkan untuk Ubah Pengambilan Data dan replikasi. Menggunakan MaxCmdsInTran dalam konfigurasi ini dapat menyebabkan kehilangan data dalam tabel perubahan CDC. Ini juga dapat menyebabkan kesalahan PK jika parameter MaxCmdsInTran ditambahkan dan dihapus saat mereplikasi Transaksi besar.

-MessageIntervalmessage_interval
Adalah interval waktu yang digunakan untuk pengelogan riwayat. Peristiwa riwayat dicatat ketika nilai MessageInterval tercapai setelah peristiwa riwayat terakhir dicatat.

Jika tidak ada transaksi yang direplikasi yang tersedia di sumbernya, agen melaporkan pesan tanpa transaksi ke Distributor. Opsi ini menentukan berapa lama agen menunggu sebelum melaporkan pesan tanpa transaksi lain. Agen selalu melaporkan pesan tidak ada transaksi ketika mereka mendeteksi bahwa tidak ada transaksi yang tersedia di sumber setelah sebelumnya memproses transaksi yang direplikasi. Defaultnya adalah 60 detik.

-MultiSubnetFailover [0|1] Menentukan apakah properti MultiSubnetFailover diaktifkan atau tidak. Jika aplikasi Anda tersambung ke grup ketersediaan AlwaysOn (AG) pada subnet yang berbeda, pengaturan MultiSubnetFailover ke 1 (true) memberikan deteksi dan koneksi yang lebih cepat ke server aktif (saat ini).

Saat Anda mengonfigurasi publikasi transaksional pada AG, Agen Pembaca Log membuat server tertaut dinamis untuk pendengar untuk memverifikasi metadata. Dimulai dengan SQL Server 2022 CU10, ada perubahan dalam konfigurasi server tertaut dinamis. Untuk informasi selengkapnya, lihat KB5031778.

Berlaku untuk: SQL Server (Dimulai dengan SQL Server 2019 (15.x)).

-Outputoutput_path_and_file_name
Adalah jalur file output agen. Jika nama file tidak disediakan, output dikirim ke konsol. Jika nama file yang ditentukan ada, output ditambahkan ke file.

-OutputVerboseLevel [ 0| 1| 2 | 3 | 4 ]
Menentukan apakah output harus verbose.

Nilai Deskripsi
0 Hanya pesan kesalahan yang dicetak.
1 Semua pesan laporan kemajuan agen dicetak.
2 (default) Semua pesan kesalahan dan pesan laporan kemajuan agen dicetak.
3 100 byte pertama dari setiap perintah yang direplikasi dicetak.
4 Semua perintah yang direplikasi dicetak.

Nilai 2-4 berguna saat penelusuran kesalahan.

-PacketSizepacket_size
Apakah ukuran paket, dalam byte. Defaultnya adalah 4096 (byte).

-PollingIntervalpolling_interval
Apakah seberapa sering, dalam detik, log dikueri untuk transaksi yang direplikasi. Defaultnya adalah 5 detik.

-ProfileNameprofile_name
Menentukan profil agen yang akan digunakan untuk parameter agen. Jika ProfileName NULL, profil agen dinonaktifkan. Jika ProfileName tidak ditentukan, profil default untuk jenis agen akan digunakan. Untuk informasi, lihat Profil Agen Replikasi.

-PublisherFailoverPartnerserver_name[\instance_name]
Menentukan instans mitra failover SQL Server yang berpartisipasi dalam sesi pencerminan database dengan database publikasi. Untuk informasi selengkapnya, lihat Pencerminan dan Replikasi Database (SQL Server).

-PublisherSecurityMode [ 0| 1]
Menentukan mode keamanan Publisher. Nilai 0 menunjukkan Autentikasi SQL Server (default), dan nilai 1 menunjukkan Mode Autentikasi Windows.

-PublisherLoginpublisher_login
Adalah nama masuk Publisher.

-PublisherPasswordpublisher_password
Adalah kata sandi Publisher.

-QueryTimeOutquery_time_out_seconds
Adalah jumlah detik sebelum waktu kueri habis. Defaultnya adalah 1800 detik.

-ReadBatchSizenumber_of_transactions
Adalah jumlah maksimum transaksi yang dibaca dari log transaksi database penerbitan per siklus pemrosesan, dengan default 500, dan maks 10000. Agen akan terus membaca transaksi dalam batch sampai semua transaksi dibaca dari log. Parameter ini tidak didukung untuk Oracle Publishers.

-ReadBatchThresholdnumber_of_commands
Adalah jumlah perintah replikasi yang akan dibaca dari log transaksi sebelum dikeluarkan kepada Pelanggan oleh Agen Distribusi. Defaultnya adalah 0. Jika parameter ini tidak ditentukan, Agen Pembaca Log akan membaca ke akhir log atau ke nomor yang ditentukan dalam -ReadBatchSize (jumlah transaksi).

-RecoverFromDataErrors
Menentukan bahwa Agen Pembaca Log terus berjalan ketika mengalami kesalahan dalam data kolom yang diterbitkan dari Penerbit non-SQL Server. Secara default, kesalahan tersebut menyebabkan Agen Pembaca Log gagal. Saat Anda menggunakan -RecoverFromDataErrors, data kolom yang salah direplikasi baik sebagai NULL atau nilai nonnull yang sesuai, dan pesan peringatan dicatat ke tabel MSlogreader_history . Parameter ini hanya didukung untuk Oracle Publishers.

Keterangan

Penting

Jika Anda menginstal SQL Server Agent untuk dijalankan di bawah akun sistem lokal alih-alih di bawah akun pengguna domain (default), layanan hanya dapat mengakses komputer lokal. Jika Agen Pembaca Log yang berjalan di bawah SQL Server Agent dikonfigurasi untuk menggunakan Mode Autentikasi Windows saat masuk ke SQL Server, Agen Pembaca Log gagal. Pengaturan defaultnya adalah Autentikasi SQL Server. Untuk informasi tentang mengubah akun keamanan, lihat Menampilkan dan Mengubah Pengaturan Keamanan Replikasi.

Untuk memulai Agen Pembaca Log, jalankan logread.exe dari prompt perintah. Untuk informasi, lihat Konsep Executables Agen Replikasi.

Ubah Riwayat

Konten yang diperbarui
Menambahkan parameter -ExtendedEventConfigFile.
Menambahkan parameter -MultiSubnetFailover.

Lihat Juga

Administrasi Agen Replikasi