Comparteix a través de


sp_add_log_shipping_primary_database (Transact-SQL)

Se aplica a: SQL Server

Configura la base de datos principal de una configuración de trasvase de registros, incluido el trabajo de copia de seguridad, el registro de monitor local y el registro de monitor remoto.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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 ]
[ ; ]

Argumentos

[ @database = ] 'database'

Nombre de la base de datos principal de trasvase de registros. @database es sysname, sin valor predeterminado y no puede ser NULL.

[ @backup_directory = ] N'backup_directory'

Ruta de acceso a la carpeta de copia de seguridad en el servidor principal. @backup_directory es nvarchar(500), sin ningún valor predeterminado y no puede ser NULL.

[ @backup_share = ] N'backup_share'

Ruta de acceso de red al directorio de copia de seguridad en el servidor principal. @backup_share es nvarchar(500), sin ningún valor predeterminado y no puede ser NULL.

[ @backup_job_name = ] 'backup_job_name'

Nombre del trabajo de Agente SQL Server en el servidor principal que copia la copia de seguridad en la carpeta de copia de seguridad. @backup_job_name es sysname y no puede ser NULL.

[ @backup_retention_period = ] backup_retention_period

El período de tiempo, en minutos, para conservar el archivo de copia de seguridad de registros en el directorio de copia de seguridad en el servidor principal. @backup_retention_period es int, sin valor predeterminado y no puede ser NULL.

[ @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.

[ @backup_threshold = ] backup_threshold

El período de tiempo, en minutos, después de la última copia de seguridad antes de que se produzca un error de @threshold_alert . @backup_threshold es int, con un valor predeterminado de 60 minutos.

[ @threshold_alert = ] threshold_alert

Alerta que se generará cuando se sobrepase el umbral de copia de seguridad. @threshold_alert es int, con un valor predeterminado de 14 420.

[ @threshold_alert_enabled = ] threshold_alert_enabled

Especifica si se genera una alerta cuando se supera @backup_threshold . El valor de cero (0), el valor predeterminado significa que la alerta está deshabilitada y no se generará. @threshold_alert_enabled es bit.

[ @history_retention_period = ] history_retention_period

El período de tiempo en minutos en el que se conserva el historial. @history_retention_period es int, con un valor predeterminado de NULL. Si no se especifica ningún valor, se utiliza 14420.

[ @backup_job_id = ] backup_job_id OUTPUT

El Agente SQL Server identificador de trabajo asociado al trabajo de copia de seguridad en el servidor principal. @backup_job_id es un parámetro OUTPUT de tipo uniqueidentifier y no puede ser NULL.

[ @primary_id = ] primary_id OUTPUT

Id. de la base de datos principal para la configuración del trasvase de registros. @primary_id es un parámetro OUTPUT de tipo uniqueidentifier y no puede ser NULL.

[ @backup_compression = ] backup_compression_option

Especifica si una configuración de trasvase de registros usa la compresión de copia de seguridad.

  • 0:Deshabilitado. No se comprimen nunca las copias de seguridad de registros.
  • 1:Habilitado. Se comprimen siempre las copias de seguridad de registros.
  • 2(valor predeterminado): use la opción Ver o configure el valor predeterminado de compresión de copia de seguridad (opción de configuración del servidor).

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Conjunto de resultados

Ninguno.

Comentarios

sp_add_log_shipping_primary_database debe ejecutarse desde la master base de datos en el servidor principal. Este procedimiento almacenado realiza las siguientes funciones:

  1. Genera un identificador principal y agrega una entrada para la base de datos principal de la tabla log_shipping_primary_databases mediante los argumentos proporcionados.

  2. Crea un trabajo de copia de seguridad para la base de datos principal que está deshabilitada.

  3. Establece el identificador del trabajo de copia de seguridad en la log_shipping_primary_databases entrada en el identificador de trabajo del trabajo de copia de seguridad.

  4. Agrega un registro de monitor local en la tabla log_shipping_monitor_primary del servidor principal mediante argumentos proporcionados.

  5. Si el servidor de supervisión es diferente del servidor principal, sp_add_log_shipping_primary_database agrega un registro de supervisión en log_shipping_monitor_primary en el servidor de supervisión mediante argumentos proporcionados.

Permisos

Solo los miembros del rol fijo de servidor sysadmin pueden ejecutar este procedimiento.

Ejemplos

En este ejemplo se agrega la base de datos AdventureWorks2022 como la base de datos principal en una configuración de trasvase de registros.

DECLARE @LS_BackupJobId AS UNIQUEIDENTIFIER;
DECLARE @LS_PrimaryId AS UNIQUEIDENTIFIER;

EXEC master.dbo.sp_add_log_shipping_primary_database
    @database = N'AdventureWorks',
    @backup_directory = N'c:\lsbackup',
    @backup_share = N'\\tribeca\lsbackup',
    @backup_job_name = N'LSBackup_AdventureWorks',
    @backup_retention_period = 1440,
    @monitor_server = N'rockaway',
    @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