sp_changesubscription (Transact-SQL)
Se aplica a: SQL Server Azure SQL Managed Instance
Cambia las propiedades de una suscripción de inserción transaccional o de instantáneas o de una suscripción de extracción relacionada con la replicación transaccional de actualización en cola. Para cambiar las propiedades de todos los demás tipos de suscripciones de extracción, use sp_change_subscription_properties. sp_changesubscription
se ejecuta en el publicador de la base de datos de publicación.
Importante
Al configurar un publicador con un distribuidor remoto, los valores proporcionados para todos los parámetros, incluidos @job_login y @job_password, se envían al distribuidor como texto sin formato. Antes de ejecutar este procedimiento almacenado, se recomienda cifrar la conexión entre el publicador y su distribuidor remoto. Para más información, consulte Configuración del Motor de base de datos de SQL Server para el cifrado de las conexiones.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_changesubscription
[ @publication = ] N'publication'
, [ @article = ] N'article'
, [ @subscriber = ] N'subscriber'
, [ @destination_db = ] N'destination_db'
, [ @property = ] N'property'
, [ @value = ] N'value'
[ , [ @publisher = ] N'publisher' ]
[ ; ]
Argumentos
[ @publication = ] N'publication'
Nombre de la publicación que se va a cambiar. @publication es sysname, sin ningún valor predeterminado.
[ @article = ] N'article'
Nombre del artículo que se va a cambiar. @article es sysname, sin ningún valor predeterminado.
[ @subscriber = ] N'subscriber'
Nombre del suscriptor. @subscriber es sysname, sin ningún valor predeterminado.
[ @destination_db = ] N'destination_db'
Nombre de la base de datos de suscripciones. @destination_db es sysname, sin ningún valor predeterminado.
[ @property = ] N'property'
Propiedad que se va a cambiar para la suscripción especificada. @property es nvarchar(30) y puede ser uno de los valores de la tabla.
[ @value = ] N'value'
Nuevo valor para la propiedad especificada. @value es nvarchar(4000) y puede ser uno de los valores de la tabla.
Propiedad | Valor | Descripción |
---|---|---|
distrib_job_login |
Inicio de sesión de la cuenta de Windows con la que se ejecuta el agente. | |
distrib_job_password |
Contraseña de la cuenta de Windows con la que se ejecuta el agente. | |
subscriber_catalog 1 |
Catálogo que debe utilizarse al establecer una conexión con el proveedor OLE DB. | |
subscriber_datasource 1 |
Nombre del origen de datos tal y como lo entiende el proveedor OLE DB. | |
subscriber_location 1 |
Ubicación de la base de datos tal y como la interpreta el proveedor OLE DB. | |
subscriber_login |
Nombre de inicio de sesión del suscriptor. | |
subscriber_password |
Contraseña segura para el inicio de sesión que se ha proporcionado. | |
subscriber_security_mode |
1 |
Se utiliza la autenticación de Windows para la conexión con el suscriptor. |
0 |
Use la autenticación de SQL Server al conectarse al suscriptor. | |
subscriber_provider 1 |
Identificador de programación único (PROGID) mediante el cual se registra el proveedor OLE DB para los orígenes de datos que no son de SQL Server. | |
subscriber_providerstring 1 |
Cadena de conexión específica del proveedor OLE DB que identifica el origen de datos. | |
subscriptionstreams |
Número de conexiones permitidas por Agente de distribución aplicar lotes de cambios en paralelo a un suscriptor. Se admite un intervalo de valores de 1 a 64 para publicadores de SQL Server. Esta propiedad debe ser para suscriptores que no sean 0 de SQL Server, publicadores de Oracle o suscripciones punto a punto. |
|
subscriber_type |
1 |
Servidor del origen de datos ODBC |
3 |
Proveedor OLE DB | |
memory_optimized |
bit | Indica que la suscripción admite tablas optimizadas para memoria. memory_optimized es bit, donde 1 es true (la suscripción admite tablas optimizadas para memoria). |
1 Esta propiedad solo es válida para suscriptores que no son de SQL Server.
[ @publisher = ] N'publisher'
Especifica un publicador que no es de SQL Server. @publisher es sysname, con un valor predeterminado de NULL
.
@publisher no se debe especificar para un publicador de SQL Server.
Valores de código de retorno
0
(correcto) o 1
(erróneo).
Comentarios
sp_changesubscription
se usa en la replicación transaccional y de instantáneas.
sp_changesubscription
solo se puede usar para modificar las propiedades de las suscripciones de inserción o las suscripciones de extracción implicadas en la replicación transaccional de actualización en cola. Para cambiar las propiedades de todos los demás tipos de suscripciones de extracción, use sp_change_subscription_properties.
Después de cambiar un inicio de sesión o una contraseña de agente, debe detener y reiniciar el agente para que el cambio surta efecto.
Permisos
Solo los miembros del rol fijo de servidor sysadmin o db_owner rol fijo de base de datos pueden ejecutar sp_changesubscription
.