回答

1

最後我找到了我的問題的解決方案:

我使用鏈接服務器創建訪問遠程服務器的連接:

exec sp_addlinkedserver 'RemoteServer\PeerInstance', N'SQL Server' 

exec sp_addlinkedsrvlogin 'RemoteServer\PeerInstant', 'true', 'sa', 'password' 

exec ReplicatedDBOnMainServer.sys.sp_dropmergesubscription 
@publication = N'PublicationName', 
@subscriber = N'RemoteServer\PeerInstant' 

exec [RemoteServer\PeerInstant].ReplicatedDBOnRemote.sys.sp_mergesubscription_cleanup 
@publisher = N'MainServer\MainInstant', 
@publisher_db = N'ReplicatedDBOnMainServer' 
@publication = N'PublicationName' 
1

要除去合併推送訂閱,您必須連接到發佈服務器和用戶無論是在用戶刪除訂閱的記錄。每How to: Delete a Push Subscription (Replication Transact-SQL Programming) - 在發佈者處執行sp_dropmergesubscription,在訂閱者處執行sp_mergesubscription_cleanup

+0

這是確切的答案,但我說我想用連接到用戶TSQL,然後執行sp_mergesubscription_cleanup。事實上,我想遠程執行命令。我應該怎麼做? – 2012-04-22 06:09:41

+0

如果您可以從訂閱服務器連接到發佈服務器,則可以執行sp_dropmergesubscription,然後在訂閱服務器上執行sp_mergesubscription_cleanup。在執行復制維護時,我通常在SSMS中向發佈者和訂閱者開放連接。 – 2012-04-22 08:21:25