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
Menyiapkan database utama untuk konfigurasi pengiriman log, termasuk pekerjaan pencadangan, catatan monitor lokal, dan catatan pemantauan jarak jauh.
Sintaks
sp_add_log_shipping_primary_database
[ @database = ] 'database'
, [ @backup_directory = ] N'backup_directory'
, [ @backup_share = ] N'backup_share'
, [ @backup_job_name = ] 'backup_job_name'
[ , [ @backup_retention_period = ] backup_retention_period ]
[ , [ @monitor_server = ] 'monitor_server' ]
[ , [ @monitor_server_security_mode = ] monitor_server_security_mode ]
[ , [ @monitor_server_login = ] 'monitor_server_login' ]
[ , [ @monitor_server_password = ] 'monitor_server_password' ]
[ , [ @backup_threshold = ] backup_threshold ]
[ , [ @threshold_alert = ] threshold_alert ]
[ , [ @threshold_alert_enabled = ] threshold_alert_enabled ]
[ , [ @history_retention_period = ] history_retention_period ]
[ , [ @backup_job_id = ] backup_job_id OUTPUT ]
[ , [ @primary_id = ] primary_id OUTPUT ]
[ , [ @backup_compression = ] backup_compression_option ]
[ , [ @primary_connection_options = ] '<key_value_pairs>;[...]' ]
[ , [ @monitor_connection_options = ] '<key_value_pairs>;[...]' ]
[ ; ]
Argumen
[ @database = ] 'basis data'
Nama database utama pengiriman log.
@database adalah sysname, tanpa default, dan tidak boleh NULL.
[ @backup_directory = ] N'backup_directory'
Jalur ke folder cadangan di server utama.
@backup_directory adalah nvarchar(500), tanpa default, dan tidak boleh NULL.
[ @backup_share = ] N'backup_share'
Jalur jaringan ke direktori cadangan di server utama.
@backup_share adalah nvarchar(500), tanpa default, dan tidak boleh NULL.
[ @backup_job_name = ] 'backup_job_name'
Nama pekerjaan SQL Server Agent di server utama yang menyalin cadangan ke folder cadangan.
@backup_job_name adalah sysname dan tidak boleh NULL.
[ @backup_retention_period = ] backup_retention_period
Lamanya waktu, dalam menit, untuk menyimpan file cadangan log di direktori cadangan di server utama.
@backup_retention_period int, tanpa default, dan tidak boleh NULL.
[ @monitor_server = ] 'monitor_server'
Nama server monitor.
@monitor_server adalah sysname, tanpa default, dan tidak boleh NULL.
[ @monitor_server_security_mode = ] monitor_server_security_mode
Mode keamanan yang digunakan untuk menyambungkan ke server monitor.
-
1: Autentikasi Windows -
0: Autentikasi SQL Server
@monitor_server_security_mode adalah bit, dengan default 1, dan tidak boleh NULL.
[ @monitor_server_login = ] 'monitor_server_login'
Nama pengguna akun yang digunakan untuk mengakses server monitor.
[ @monitor_server_password = ] 'monitor_server_password'
Kata sandi akun yang digunakan untuk mengakses server monitor.
[ @backup_threshold = ] backup_threshold
Lamanya waktu, dalam menit, setelah pencadangan terakhir sebelum kesalahan @threshold_alert dimunculkan. @backup_threshold int, dengan default 60 menit.
[ @threshold_alert = ] threshold_alert
Pemberitahuan yang akan dinaikkan ketika ambang cadangan terlampaui. @threshold_alert int, dengan default 14.420.
[ @threshold_alert_enabled = ] threshold_alert_enabled
Menentukan apakah pemberitahuan dinaikkan saat @backup_threshold terlampaui. Nilai nol (0), default, berarti pemberitahuan dinonaktifkan dan tidak akan dinaikkan. @threshold_alert_enabled sedikit.
[ @history_retention_period = ] history_retention_period
Lamanya waktu dalam menit di mana riwayat dipertahankan.
@history_retention_period int, dengan default NULL. Nilai 14420 digunakan jika tidak ada yang ditentukan.
[ @backup_job_id = ] backup_job_id KELUARAN
ID pekerjaan SQL Server Agent yang terkait dengan pekerjaan pencadangan di server utama.
@backup_job_id adalah parameter OUTPUT dari jenis pengidentifikasi unik dan tidak boleh NULL.
[ @primary_id = ] primary_id KELUARAN
ID database utama untuk konfigurasi pengiriman log.
@primary_id adalah parameter OUTPUT dari jenis pengidentifikasi unik dan tidak boleh NULL.
[ @backup_compression = ] backup_compression_option
Menentukan apakah konfigurasi pengiriman log menggunakan kompresi cadangan.
-
0:Cacat. Jangan pernah memadatkan cadangan log. -
1:Diaktifkan. Selalu kompres cadangan log. -
2(default): Gunakan opsi konfigurasi server default kompresi cadangan .
[ @primary_connection_options = ] '<key_value_pairs>;[ ...]'
Berlaku untuk: SQL Server 2025 (17.x) dan versi yang lebih baru
Menentukan opsi konektivitas tambahan saat menyambungkan ke primer, dalam bentuk pasangan nilai kunci.
@primary_connection_options adalah nvarchar(4000) dan memiliki default .NULL
Tabel berikut ini mencantumkan opsi konektivitas yang tersedia:
| Key | Nilai |
|---|---|
Encrypt |
strict, mandatoryoptional, true,false |
TrustServerCertificate |
true,false,yes,no |
ServerCertificate |
Jalur pada sistem file ke sertifikat server. Ini memiliki panjang maksimum 260 karakter. |
HostNameInCertificate |
Penggantian nama host untuk sertifikat. Ini memiliki panjang maksimum 255 karakter. |
[ @monitor_connection_options = ] '<key_value_pairs>;[ ...]'
Berlaku untuk: SQL Server 2025 (17.x) dan versi yang lebih baru
Menentukan opsi konektivitas tambahan untuk koneksi server tertaut saat menggunakan monitor jarak jauh, dalam bentuk pasangan nilai kunci.
@monitor_connection_options adalah nvarchar(4000) dan memiliki default .NULL
Tabel berikut ini mencantumkan opsi konektivitas yang tersedia:
| Key | Nilai |
|---|---|
Encrypt |
strict, mandatoryoptional, true,false |
TrustServerCertificate |
true,false,yes,no |
ServerCertificate |
Jalur pada sistem file ke sertifikat server. Ini memiliki panjang maksimum 260 karakter. |
HostNameInCertificate |
Penggantian nama host untuk sertifikat. Ini memiliki panjang maksimum 255 karakter. |
Mengembalikan nilai kode
0 (berhasil) atau 1 (kegagalan).
Tataan hasil
Tidak ada.
Keterangan
sp_add_log_shipping_primary_database harus dijalankan dari master database di server utama. Prosedur tersimpan ini melakukan fungsi berikut:
Menghasilkan ID utama dan menambahkan entri untuk database utama dalam tabel
log_shipping_primary_databasesmenggunakan argumen yang disediakan.Membuat pekerjaan pencadangan untuk database utama yang dinonaktifkan.
Mengatur ID pekerjaan pencadangan dalam
log_shipping_primary_databasesentri ke ID pekerjaan pekerjaan pencadangan.Menambahkan rekaman monitor lokal dalam tabel
log_shipping_monitor_primarydi server utama menggunakan argumen yang disediakan.Jika server monitor berbeda dari server utama,
sp_add_log_shipping_primary_databasetambahkan catatan monitor dilog_shipping_monitor_primaryserver monitor menggunakan argumen yang disediakan.
Izin
Hanya anggota peran server tetap sysadmin yang dapat menjalankan prosedur ini.
Contoh
A. Menambahkan database utama dalam konfigurasi pengiriman log
Contoh ini menambahkan database AdventureWorks2025 sebagai database utama dalam konfigurasi pengiriman log.
DECLARE @LS_BackupJobId AS UNIQUEIDENTIFIER;
DECLARE @LS_PrimaryId AS UNIQUEIDENTIFIER;
EXECUTE master.dbo.sp_add_log_shipping_primary_database
@database = N'AdventureWorks',
@backup_directory = N'c:\lsbackup',
@backup_share = N'\\backupshare\lsbackup',
@backup_job_name = N'LSBackup_AdventureWorks',
@backup_retention_period = 1440,
@monitor_server = N'monitor-server',
@monitor_server_security_mode = 1,
@backup_threshold = 60,
@threshold_alert = 0,
@threshold_alert_enabled = 0,
@history_retention_period = 1440,
@backup_job_id = @LS_BackupJobId OUTPUT,
@primary_id = @LS_PrimaryId OUTPUT,
@overwrite = 1,
@backup_compression = 0;
GO
B. Tambahkan database utama dengan enkripsi ketat
Contoh ini menambahkan database AdventureWorks2025 sebagai database utama dalam konfigurasi pengiriman log dan menginstruksikan pengiriman log untuk menggunakan opsi enkripsi ketat untuk koneksi ke instans utama dari pengiriman log yang dapat dieksekusi dan dari instans utama ke instans monitor-servermonitor jarak jauh .
DECLARE @LS_BackupJobId AS UNIQUEIDENTIFIER;
DECLARE @LS_PrimaryId AS UNIQUEIDENTIFIER;
EXECUTE master.dbo.sp_add_log_shipping_primary_database
@database = N'AdventureWorks',
@backup_directory = N'c:\lsbackup',
@backup_share = N'\\backupshare\lsbackup',
@backup_job_name = N'LSBackup_AdventureWorks',
@backup_retention_period = 1440,
@monitor_server = N'monitor-server',
@monitor_server_security_mode = 1,
@backup_threshold = 60,
@threshold_alert = 0,
@threshold_alert_enabled = 0,
@history_retention_period = 1440,
@backup_job_id = @LS_BackupJobId OUTPUT,
@primary_id = @LS_PrimaryId OUTPUT,
@overwrite = 1,
@backup_compression = 0,
@primary_connection_options = N'Encrypt=Strict;',
@monitor_connection_options = N'Encrypt=Strict;';
GO
C. Gunakan monitor jarak jauh dengan opsi konektivitas
Pemantauan pengiriman log dapat rusak jika monitor adalah instans SQL Server 2025 (17.x) jarak jauh, ketika instans SQL Server lainnya dalam topologi pengiriman log menggunakan versi sebelumnya.
Setelah Anda menghapus konfigurasi yang ada, gunakan contoh skrip berikut untuk membuat ulang konfigurasi pengiriman log dengan @monitor_connection_options yang benar, untuk replika primer dan sekunder.
DECLARE @LS_BackupJobId AS UNIQUEIDENTIFIER;
DECLARE @LS_PrimaryId AS UNIQUEIDENTIFIER;
EXECUTE
master.dbo.sp_add_log_shipping_primary_database
@database = N'LogShippedDB',
@backup_directory = N'\\backupshare\lsbackup',
@backup_share = N'\\backupshare\lsbackup',
@backup_job_name = N'LSBackup_AdventureWorks',
@backup_retention_period = 4320,
@backup_compression = 2,
@monitor_server = N'LS25Monitor',
@monitor_server_security_mode = 1,
@backup_threshold = 60,
@threshold_alert_enabled = 1,
@history_retention_period = 5760,
@backup_job_id = @LS_BackupJobId OUTPUT,
@primary_id = @LS_PrimaryId OUTPUT,
@overwrite = 1,
@monitor_connection_options = N'Encrypt=Mandatory;TrustServerCertificate=Yes;';
Untuk informasi selengkapnya, lihat Perilaku enkripsi dan validasi sertifikat.