Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Yedekleme işi, yerel izleyici kaydı ve uzak izleyici kaydı dahil olmak üzere günlük gönderim yapılandırması için birincil veritabanını ayarlar.
Transact-SQL söz dizimi kuralları
Sözdizimi
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>;[...]' ]
[ ; ]
Tartışmalar
[ @database = ] 'veritabanı'
Günlük gönderimi birincil veritabanının adı.
@databasesysname'dir ve varsayılan değer yoktur ve olamaz NULL.
[ @backup_directory = ] N'backup_directory'
Birincil sunucudaki yedekleme klasörünün yolu.
@backup_directorynvarchar(500)'dir ve varsayılan değer yoktur ve olamaz NULL.
[ @backup_share = ] N'backup_share'
Birincil sunucudaki yedekleme dizininin ağ yolu.
@backup_sharenvarchar(500)'dir ve varsayılan değer yoktur ve olamaz NULL.
[ @backup_job_name = ] 'backup_job_name'
Yedeklemeyi yedekleme klasörüne kopyalayan birincil sunucudaki SQL Server Aracısı işinin adı.
@backup_job_namesysname'dir ve olamaz NULL.
[ @backup_retention_period = ] backup_retention_period
Günlük yedekleme dosyasını birincil sunucudaki yedekleme dizininde tutma süresi (dakika cinsinden).
@backup_retention_period varsayılan olmadan int'tir ve olamaz NULL.
[ @monitor_server = ] 'monitor_server'
İzleyici sunucusunun adı.
@monitor_serversysname'dir ve varsayılan değer yoktur ve olamaz NULL.
[ @monitor_server_security_mode = ] monitor_server_security_mode
monitör sunucusuna bağlanmak için kullanılan güvenlik modu.
-
1: Windows Kimlik Doğrulaması -
0: SQL Server Kimlik Doğrulaması
@monitor_server_security_modebittir ve varsayılan değeri 1ile olamaz NULL.
[ @monitor_server_login = ] 'monitor_server_login'
İzleyici sunucusuna erişmek için kullanılan hesabın kullanıcı adı.
[ @monitor_server_password = ] 'monitor_server_password'
İzleyici sunucusuna erişmek için kullanılan hesabın parolası.
[ @backup_threshold = ] backup_threshold
bir @threshold_alert hatası oluşmadan önceki son yedeklemeden sonraki dakika cinsinden süre. @backup_threshold , varsayılan değeri 60 dakika olan int'tir.
[ @threshold_alert = ] threshold_alert
Yedekleme eşiği aşıldığında tetiklenecek uyarı. @threshold_alert , varsayılan değeri 14.420 olan int'tir.
[ @threshold_alert_enabled = ] threshold_alert_enabled
@backup_threshold aşıldığında bir uyarının tetiklenip tetiklenmeyeceğini belirtir. Varsayılan değer olan sıfır (0) değeri, uyarının devre dışı bırakıldığı ve yükseltilmeyeceği anlamına gelir. @threshold_alert_enabledbittir.
[ @history_retention_period = ] history_retention_period
Geçmişin tutıldığı dakika cinsinden süre.
@history_retention_period, varsayılan değeri olan int'tirNULL. Belirtilmezse 14420 değeri kullanılır.
[ @backup_job_id = ] backup_job_id ÇıKıŞ
Birincil sunucudaki yedekleme işiyle ilişkili SQL Server Aracısı iş kimliği.
@backup_job_iduniqueidentifier türünde bir OUTPUT parametresidir ve olamaz NULL.
[ @primary_id = ] primary_id ÇıKıŞ
Günlük gönderim yapılandırması için birincil veritabanının kimliği.
@primary_iduniqueidentifier türünde bir OUTPUT parametresidir ve olamaz NULL.
[ @backup_compression = ] backup_compression_option
Günlük gönderim yapılandırmasının yedekleme sıkıştırması kullanıp kullanmadığını belirtir.
-
0:Sakat. Günlük yedeklemelerini asla sıkıştırmayın. -
1:Etkin. Günlük yedeklemelerini her zaman sıkıştırır. -
2(varsayılan): Yedekleme sıkıştırma varsayılan sunucu yapılandırma seçeneğini kullanın.
[ @primary_connection_options = ] '<key_value_pairs>;[ ...]'
Geçerlidir: SQL Server 2025 (17.x) ve sonraki sürümler
Birincile bağlanırken anahtar değer çiftleri biçiminde ek bağlantı seçeneklerini belirtir.
@primary_connection_optionsnvarchar(4000) ve varsayılan değeridir NULL.
Aşağıdaki tabloda kullanılabilir bağlantı seçenekleri listelenmiştir:
| Key | Değer |
|---|---|
Encrypt |
strict, mandatory, optional, true, , false |
TrustServerCertificate |
true, false, yes, no |
ServerCertificate |
Dosya sistemindeki sunucu sertifikası yolu. Bu, en fazla 260 karakter uzunluğundadır. |
HostNameInCertificate |
Sertifika için ana bilgisayar adı geçersiz kılma. Bu, en fazla 255 karakter uzunluğundadır. |
[ @monitor_connection_options = ] '<key_value_pairs>;[ ...]'
Geçerlidir: SQL Server 2025 (17.x) ve sonraki sürümler
Uzak bir monitör kullanırken bağlantılı sunucu bağlantısı için anahtar değer çiftleri biçiminde ek bağlantı seçeneklerini belirtir.
@monitor_connection_optionsnvarchar(4000) ve varsayılan değeridir NULL.
Aşağıdaki tabloda kullanılabilir bağlantı seçenekleri listelenmiştir:
| Key | Değer |
|---|---|
Encrypt |
strict, mandatory, optional, true, , false |
TrustServerCertificate |
true, false, yes, no |
ServerCertificate |
Dosya sistemindeki sunucu sertifikası yolu. Bu, en fazla 260 karakter uzunluğundadır. |
HostNameInCertificate |
Sertifika için ana bilgisayar adı geçersiz kılma. Bu, en fazla 255 karakter uzunluğundadır. |
Dönüş kodu değerleri
0 (başarı) veya 1 (başarısızlık).
Sonuç kümesi
Yok.
Açıklamalar
sp_add_log_shipping_primary_database birincil sunucudaki master veritabanından çalıştırılmalıdır. Bu saklı yordam aşağıdaki işlevleri gerçekleştirir:
Birincil kimlik oluşturur ve sağlanan bağımsız değişkenleri kullanarak tablodaki
log_shipping_primary_databasesbirincil veritabanı için bir girdi ekler.Devre dışı bırakılan birincil veritabanı için bir yedekleme işi oluşturur.
Girdideki
log_shipping_primary_databasesyedekleme işi kimliğini yedekleme işinin iş kimliğine ayarlar.Sağlanan bağımsız değişkenleri kullanarak birincil sunucudaki tabloya
log_shipping_monitor_primaryyerel bir izleyici kaydı ekler.İzleyici sunucusu birincil sunucudan farklıysa,
sp_add_log_shipping_primary_databasesağlanan bağımsız değişkenleri kullanarak izleyici sunucusuna bir izleyici kaydılog_shipping_monitor_primaryekler.
İzinler
Bu yordamı yalnızca sysadmin sabit sunucu rolünün üyeleri çalıştırabilir.
Örnekler
A. Log gönderim yapılandırmasında birincil veritabanı ekleyin
Bu örnek, veritabanını AdventureWorks2025 günlük gönderim yapılandırmasında birincil veritabanı olarak ekler.
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. Sıkı şifrelemeyle birincil veritabanı ekleyin
Bu örnek, veritabanını AdventureWorks2025 günlük gönderim yapılandırmasında birincil veritabanı olarak ekler ve günlük gönderimi için hem günlük gönderim yürütülebilir dosyasından birincil örneğe hem de birincil örnekten uzak izleyici örneğine monitor-serverbağlantı için katı şifreleme seçeneklerini kullanma talimatını gönderir.
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. Bağlantı seçenekleriyle uzaktan monitör kullanın
Günlük gönderim topolojisindeki diğer SQL Server örnekleri önceki bir sürümü kullandığında, izleyici uzak bir SQL Server 2025 (17.x) örneğiyse günlük gönderimi izleme bozulabilir.
Mevcut yapılandırmayı kaldırdıktan sonra, hem birincil hem de ikincil replikalar için doğru @monitor_connection_options ile günlük gönderim yapılandırmasını yeniden oluşturmak için aşağıdaki örnek betikleri kullanın.
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;';
Daha fazla bilgi için bkz . Şifreleme ve sertifika doğrulama davranışı.