Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
Configura información principal, agrega vínculos al monitor local y remoto y crea trabajos de copia y restauración en el servidor secundario de la base de datos principal especificada.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_add_log_shipping_secondary_primary
[ @primary_server = ] 'primary_server'
, [ @primary_database = ] 'primary_database'
, [ @backup_source_directory = ] N'backup_source_directory'
, [ @backup_destination_directory = ] N'backup_destination_directory'
, [ @copy_job_name = ] 'copy_job_name'
, [ @restore_job_name = ] 'restore_job_name'
[ , [ @file_retention_period = ] 'file_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' ]
[ , [ @copy_job_id = ] 'copy_job_id' OUTPUT ]
[ , [ @restore_job_id = ] 'restore_job_id' OUTPUT ]
[ , [ @secondary_id = ] 'secondary_id' OUTPUT ]
[ , [ @secondary_connection_options = ] '<key_value_pairs>;[...]' ]
[ , [ @monitor_connection_options = ] '<key_value_pairs>;[...]' ]
[ ; ]
Argumentos
[ @primary_server = ] 'primary_server'
Nombre de la instancia principal del motor de base de datos de SQL Server en la configuración del trasvase de registros.
@primary_server es sysname y no puede ser NULL.
[ @primary_database = ] 'primary_database'
Nombre de la base de datos en el servidor principal. @primary_database es sysname, sin ningún valor predeterminado.
[ @backup_source_directory = ] N'backup_source_directory'
Directorio donde se almacenan los archivos de copia de seguridad de registros de transacciones del servidor principal.
@backup_source_directory es nvarchar(500) y no puede ser NULL.
[ @backup_destination_directory = ] N'backup_destination_directory'
Directorio del servidor secundario donde se copian los archivos de copia de seguridad.
@backup_destination_directory es nvarchar(500) y no puede ser NULL.
[ @copy_job_name = ] 'copy_job_name'
Nombre que se va a usar para el trabajo de Agente SQL Server que se va a crear para copiar copias de seguridad del registro de transacciones en el servidor secundario.
copy_job_name es sysname y no puede ser NULL.
[ @restore_job_name = ] 'restore_job_name'
Nombre del trabajo de Agente SQL Server en el servidor secundario que restaura las copias de seguridad en la base de datos secundaria.
restore_job_name es sysname y no puede ser NULL.
[ @file_retention_period = ] 'file_retention_period'
El período de tiempo, en minutos, que un archivo de copia de seguridad se conserva en el servidor secundario en la ruta de acceso especificada por el @backup_destination_directory parámetro antes de eliminarse.
@history_retention_period es int, con un valor predeterminado de NULL. Si no se especifica ningún valor, se utiliza 14420.
[ @monitor_server = ] 'monitor_server'
Nombre del servidor de supervisión.
@monitor_server es sysname, sin ningún valor predeterminado y no puede ser NULL.
[ @monitor_server_security_mode = ] 'monitor_server_security_mode'
Modo de seguridad utilizado para conectarse al servidor de supervisión.
-
1: Autenticación de Windows -
0: autenticación de SQL Server
@monitor_server_security_mode es bit, con un valor predeterminado de 1y no puede ser NULL.
[ @monitor_server_login = ] 'monitor_server_login'
Nombre de usuario de la cuenta usada para acceder al servidor de supervisión.
[ @monitor_server_password = ] 'monitor_server_password'
Contraseña de la cuenta usada para acceder al servidor de supervisión.
[ @copy_job_id = ] SALIDA 'copy_job_id'
Id. asociado al trabajo de copia en el servidor secundario.
@copy_job_id es uniqueidentifier y no puede ser NULL.
[ @restore_job_id = ] SALIDA 'restore_job_id'
Id. asociado al trabajo de restauración en el servidor secundario.
@restore_job_id es uniqueidentifier y no puede ser NULL.
[ @secondary_id = ] SALIDA 'secondary_id'
Id. del servidor secundario en la configuración del trasvase de registros.
@secondary_id es uniqueidentifier y no puede ser NULL.
[ @secondary_connection_options = ] '<key_value_pairs>;[ ...]'
Aplica a: SQL Server 2025 (17.x) y versiones posteriores
Especifica opciones de conectividad adicionales al conectarse a la base de datos secundaria, en forma de pares clave-valor.
@secondary_connection_options es nvarchar(4000) y tiene el valor predeterminado de NULL.
En la tabla siguiente se enumeran las opciones de conectividad disponibles:
| Key | Importancia |
|---|---|
Encrypt |
strict, mandatory, optional, , true, false |
TrustServerCertificate |
true, false, , yes, no |
ServerCertificate |
Ruta de acceso del sistema de archivos al certificado de servidor. Tiene una longitud máxima de 260 caracteres. |
HostNameInCertificate |
Invalidación de nombre de host para el certificado. Tiene una longitud máxima de 255 caracteres. |
[ @monitor_connection_options = ] '<key_value_pairs>;[ ...]'
Aplica a: SQL Server 2025 (17.x) y versiones posteriores
Especifica opciones de conectividad adicionales para la conexión del servidor vinculado al usar un monitor remoto, en forma de pares clave-valor.
@monitor_connection_options es nvarchar(4000) y tiene el valor predeterminado de NULL.
En la tabla siguiente se enumeran las opciones de conectividad disponibles:
| Key | Importancia |
|---|---|
Encrypt |
strict, mandatory, optional, , true, false |
TrustServerCertificate |
true, false, , yes, no |
ServerCertificate |
Ruta de acceso del sistema de archivos al certificado de servidor. Tiene una longitud máxima de 260 caracteres. |
HostNameInCertificate |
Invalidación de nombre de host para el certificado. Tiene una longitud máxima de 255 caracteres. |
Valores de código de retorno
0 (correcto) o 1 (erróneo).
Conjunto de resultados
Ninguno.
Comentarios
sp_add_log_shipping_secondary_primary debe ejecutarse desde la master base de datos en el servidor secundario. Este procedimiento almacenado hace lo siguiente:
Genera un Id. secundario para el servidor principal y la base de datos principal especificados.
Hace lo siguiente:
- Agrega una entrada para el identificador secundario en
log_shipping_secondarymediante los argumentos proporcionados. - Crea un trabajo de copia para el Id. secundario que está deshabilitado.
- Establece el identificador del trabajo de copia en la
log_shipping_secondaryentrada en el identificador de trabajo del trabajo de copia. - Crea un trabajo de restauración para el Id. secundario que está deshabilitado.
- Establezca el identificador del trabajo de restauración en la
log_shipping_secondaryentrada en el identificador de trabajo del trabajo de restauración.
- Agrega una entrada para el identificador secundario en
Permisos
Solo los miembros del rol fijo de servidor sysadmin pueden ejecutar este procedimiento.
Ejemplos
En este ejemplo se muestra el uso del sp_add_log_shipping_secondary_primary procedimiento almacenado para configurar la información de la base de datos AdventureWorks2025 principal en el servidor secundario.
EXECUTE master.dbo.sp_add_log_shipping_secondary_primary
@primary_server = N'TRIBECA',
@primary_database = N'AdventureWorks2022',
@backup_source_directory = N'\\tribeca\LogShipping',
@backup_destination_directory = N'',
@copy_job_name = N'',
@restore_job_name = N'',
@file_retention_period = 1440,
@monitor_server = N'ROCKAWAY',
@monitor_server_security_mode = 1,
@copy_job_id = @LS_Secondary__CopyJobId OUTPUT,
@restore_job_id = @LS_Secondary__RestoreJobId OUTPUT,
@secondary_id = @LS_Secondary__SecondaryId OUTPUT;
GO