码迷,mamicode.com
首页 > 数据库 > 详细

SQL Server删除distribution数据库二

时间:2016-06-23 14:10:09      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:

    以前总结过一遍博文SQL Server删除distribution数据库,里面介绍了如何删除distribution数据库。今天介绍一个删除distribution的特殊案例,

    在这之前,我不知道这个服务器上的Replication被如何折腾过,在SSMS管理界面的Local Publications和Local Subscriptions里面已经看不到任何关于发布、订阅相关的内容。

技术分享

 

但是使用命令EXEC sp_helpdistpublisher会看到使用分发服务器的发布服务器的属性

技术分享

下面SQL的参数@publisher对应上面name的值,此处用xxxx替代

 

USE master;
 
GO
 
exec sp_dropdistpublisher  @publisher = ‘xxxx‘

技术分享

 

我们通过下面SQL,发现其在数据库(暂且用A表示)A上面做过发布,

技术分享

 

执行下面SQL时,报错误,因为这个数据库上有一个数据库级别的触发器safety,禁止任何DDL操作,首先禁用这个触发器后,执行下面SQL,就会将下面截图部分触发器全部清理。

USE master;
go
EXEC sp_removedbreplication ‘A‘

技术分享


然后按照SQL Server删除distribution数据库里面步骤,依葫芦画瓢,执行下面SQL,就能轻轻松松的将distribution数据库删除。

USE ArtDB;
GO
exec sp_dropdistpublisher  @publisher = ‘xxx‘
 
 
USE master;
GO
 
exec sp_dropdistributiondb @database = N‘distribution‘
GO

SQL Server删除distribution数据库二

标签:

原文地址:http://www.cnblogs.com/kerrycode/p/5610509.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!