1. 程式人生 > >MSSQL 刪除複製釋出

MSSQL 刪除複製釋出

--將資料庫Owner更改為sa即可
exec sp_changedbowner 'sa'
use master
exec sp_removedbreplication '複製的資料庫名'--重新整理本地釋出後該資料庫不應存在的複製就消失了。
--發現釋出無法刪除的情況,於是執行
--1 sp_helpdistpublisher 列出釋出的伺服器名和釋出資料庫
--2 sp_helpsubscriberinfo 列出所有subscribers.
--每一個都執行sp_dropsubscriber 'SubscriberName'
--3 sp_helppublisher 
--執行 sp_dropdistpublisher  'name'
--執行這一步後發現錯誤 Invalid object name 'dbo.MSmerge_agents'. 
 
--4、修復第3步的錯誤,按表語句在distribution建表
create table msmerge_agents
(id int, name nvarchar(100), 
publisher_id smallint,
publisher_db sysname, publication sysname,
subscriber_id smallint, subscriber_db sysname,
local_job bit, job_id binary(16),
profile_id int, anonymous_subid uniqueidentifier,
subscriber_name sysname,
creation_date datetime,
offload_enabled bit,
offload_server sysname,
sid varbinary(85),
subscriber_security_mode smallint,
subscriber_password nvarchar(524),
publisher_login sysname,
publisher_password nvarchar(524),
job_step_uid uniqueidentifier
)
CREATE table MSmerge_subscriptions
(
publisher_id smallint,
publisher_db sysname,
publication_id int,
subscriber_id smallint,
subscriber_db sysname,
subscription_type int,
sync_type tinyint,
status tinyint,
subscription_time datetime
)
--5、執行
exec sp_dropdistributiondb @database = N'distribution'
GO
--執行過程中可中斷,資料庫distribution由系統資料庫變成了使用者資料庫,選擇資料庫刪除。