sp_dropdistributor (Transact-SQL)
Se aplica a: SQL Server Azure SQL Managed Instance
Desinstala el distribuidor. Este procedimiento almacenado se ejecuta en el distribuidor de cualquier base de datos, excepto la de distribución.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_dropdistributor
[ [ @no_checks = ] no_checks ]
[ , [ @ignore_distributor = ] ignore_distributor ]
[ ; ]
Argumentos
[ @no_checks = ] no_checks
Indica si se comprobará si existen objetos dependientes antes de quitar el distribuidor. @no_checks es bit, con un valor predeterminado de 0
.
Si
0
es ,sp_dropdistributor
comprueba que se quitaron todos los objetos de publicación y distribución, además del distribuidor.Si
1
es ,sp_dropdistributor
quita todos los objetos de publicación y distribución antes de desinstalar el distribuidor.
[ @ignore_distributor = ] ignore_distributor
Indica si este procedimiento almacenado se ejecuta sin conectarse al distribuidor. @ignore_distributor es bit, con un valor predeterminado de 0
.
Si
0
es ,sp_dropdistributor
se conecta al distribuidor y quita todos los objetos de replicación. Sisp_dropdistributor
no se puede conectar al distribuidor, se produce un error en el procedimiento almacenado.Si
1
es , no se establece ninguna conexión con el distribuidor y no se quitan los objetos de replicación. Esta opción se usa si el distribuidor se desinstala o está sin conexión permanentemente. Los objetos de este publicador en el distribuidor no se quitan hasta que el distribuidor se vuelva a instalar en algún momento futuro.
Valores de código de retorno
0
(correcto) o 1
(erróneo).
Comentarios
sp_dropdistributor
se usa en todos los tipos de replicación.
Si existen otros objetos publisher o de distribución en el servidor, se produce un error a sp_dropdistributor
menos que @no_checks esté establecido 1
en .
Este procedimiento almacenado debe ejecutarse después de quitar la base de datos de distribución ejecutando sp_dropdistributiondb
.
Ejemplos
-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables
-- on the command line and in SQL Server Management Studio, see the
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".
-- Disable publishing and distribution.
DECLARE @distributionDB AS sysname;
DECLARE @publisher AS sysname;
DECLARE @publicationDB as sysname;
SET @distributionDB = N'distribution';
SET @publisher = $(DistPubServer);
SET @publicationDB = N'AdventureWorks2022';
-- Disable the publication database.
USE [AdventureWorks2022]
EXEC sp_removedbreplication @publicationDB;
-- Remove the registration of the local Publisher at the Distributor.
USE master
EXEC sp_dropdistpublisher @publisher;
-- Delete the distribution database.
EXEC sp_dropdistributiondb @distributionDB;
-- Remove the local server as a Distributor.
EXEC sp_dropdistributor;
GO
Permisos
Solo los miembros del rol fijo de servidor sysadmin pueden ejecutar sp_dropdistributor
.
Contenido relacionado
- Disable Publishing and Distribution (Deshabilitar la publicación y la distribución)
- sp_adddistributor (Transact-SQL)
- sp_changedistributor_property (Transact-SQL)
- sp_helpdistributor (Transact-SQL)
- Procedimientos almacenados de replicación (Transact-SQL)