Share via


sp_copysubscription (Transact-SQL)

Se aplica a:SQL ServerAzure SQL Managed Instance

Importante

La característica de suscripciones adjuntables ha quedado desusada y se retirará en versiones posteriores. Esta característica no se debe utilizar en nuevos trabajos de desarrollo. En las publicaciones de combinación en las que se han creado particiones mediante filtros con parámetros, se recomienda utilizar las nuevas características de las instantáneas con particiones, que simplifican la inicialización de un gran número de suscripciones. Para más información, consulte Instantáneas para publicaciones de combinación con filtros con parámetros. En las publicaciones que no están divididas en particiones, puede inicializar una suscripción con una copia de seguridad. Para obtener más información, consulte Initialize a Transactional Subscription Without a Snapshot.

Copia una base de datos de suscripciones que tiene suscripciones de extracción, pero no de inserción. Solo se pueden copiar bases de datos de un único archivo. Este procedimiento almacenado se ejecuta en el suscriptor de la base de datos de suscripciones.

Convenciones de sintaxis de Transact-SQL

Sintaxis

  
sp_copysubscription [ @filename = ] 'file_name'  
    [ , [ @temp_dir = ] 'temp_dir' ]  
    [ , [ @overwrite_existing_file = ] overwrite_existing_file]  

Argumentos

[ @filename = ] 'file_name' Es la cadena que especifica la ruta de acceso completa, incluido el nombre de archivo, en la que se guarda una copia del archivo de datos (.mdf). el nombre de archivo es nvarchar(260), sin ningún valor predeterminado.

[ @temp_dir = ] 'temp_dir' Es el nombre del directorio que contiene los archivos temporales. temp_dir es nvarchar(260), con un valor predeterminado de NULL. Si es NULL, se usará microsoft SQL Server directorio de datos predeterminado. El directorio debe tener espacio suficiente para contener un archivo que tenga el tamaño de todos los archivos de la base de datos del suscriptor combinados.

[ @overwrite_existing_file = ] 'overwrite_existing_file' Es una marca booleana opcional que especifica si se va a sobrescribir o no un archivo existente con el mismo nombre especificado en @filename. overwrite_existing_filees bit, con un valor predeterminado de 0. Si es 1, sobrescribe el archivo especificado por @filename, si existe. Si es 0, se produce un error en el procedimiento almacenado si el archivo existe y el archivo no se sobrescribe.

Valores de código de retorno

0 (correcto) o 1 (error)

Comentarios

sp_copysubscription se usa en todos los tipos de replicación para copiar una base de datos de suscripciones en un archivo como alternativa a aplicar una instantánea en el suscriptor. La base de datos se debe configurar para que solo admita suscripciones de extracción. Los usuarios que tengan los permisos apropiados pueden realizar copias de la base de datos de suscripciones y, a continuación, enviar por correo electrónico, copiar o transportar el archivo de suscripción (.msf) a otro suscriptor, donde se puede adjuntar como una suscripción.

El tamaño de la base de datos de suscripciones que se va a copiar debe ser inferior a 2 gigabytes (GB).

sp_copysubscription solo se admite para bases de datos con suscripciones de cliente y no se puede ejecutar cuando la base de datos tiene suscripciones de servidor.

Permisos

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

Consulte también

Ubicaciones alternativas para las carpetas de instantáneas
Procedimientos almacenados del sistema (Transact-SQL)