SQL Server 2000 または SQL Server 2005 では、レプリケーションを手動で削除する方法

文書翻訳 文書翻訳
文書番号: 324401 - 対象製品
すべて展開する | すべて折りたたむ

目次

概要

ここでは、レプリケーションは、Microsoft SQL Server 2000 または Microsoft SQL Server 2005 を実行しているコンピューターから削除するについて説明します。 レプリケーションを削除するには、サブスクリプション、パブリケーション、および、ディストリビューター、レプリケーション用に構成されているを削除する必要があります。 SQL Server Enterprise Manager または SQL Server の管理 Studio によって生成される Transact-SQL スクリプトを実行して、レプリケーション削除できます。 ただし場合は、Transact-SQL を生成することはできません、レプリケーションを削除するスクリプトをレプリケーション システム ストアド プロシージャおよびほかの Transact-SQL ステートメントを使用して手動で削除できます。 この資料ではこのプロセスで使用できるシステム ストアド プロシージャについて説明します。

メモ システムに関する追加情報は、この資料に記載されているストアド プロシージャ参照 SQL Server Books Online してください。

手動で、レプリケーションを削除します。

手動でシステム ストアド プロシージャおよびほかの Transact-SQL ステートメントを使用して、レプリケーションを削除することができます。 完全に削除のレプリケーションを次の手順に従います。
  1. レプリケーション構成されているすべてのサブスクリプションを削除します。
  2. レプリケーション構成されているすべてのパブリケーションを削除します。
  3. ディストリビューター レプリケーション用に構成されているをドロップします。
メモ レプリケーションの種類ごとに、システム ストアド プロシージャは、この資料に記載します。 削除するレプリケーションの種類に応じて適切なストアド プロシージャ] を使用します。

サブスクリプションを削除します。

SQL Server のインスタンスから、サブスクリプションを削除するには、次のストアド プロシージャと適切なパラメーター使用できます。
  • sp_dropsubscription : パブリッシャーで特定のアーティクル、パブリケーション、またはサブスクリプションの集合にサブスクリプションを削除するには、 sp_dropsubscription のシステム ストアド手順を使用することができます。 パブリッシャー サーバーでストアド手順を実行、パブリケーション データベースでを実行する必要があります。
  • sp_droppullsubscription : サブスクライバーの現在のデータベースでサブスクリプションを削除するには、 sp_droppullsubscription のシステム ストアド手順を使用することができます。 サブスクライバーでストアド手順を実行、プル サブスクリプション データベース上を実行する必要があります。
  • sp_dropmergesubscription : マージ パブリケーションと、マージ エージェント、マージ パブリケーションに関連付けられているサブスクリプションを削除するには、 sp_dropmergesubscription のシステム ストアド手順を使用することができます。 パブリッシャー サーバーでストアド手順を実行、パブリケーション データベースでを実行する必要があります。
  • sp_dropmergepullsubscription : マージ プル サブスクリプションを削除するには、 sp_dropmergepullsubscription のシステム ストアド手順を使用することができます。 サブスクライバーでストアド手順を実行、プル サブスクリプション データベース上を実行する必要があります。

スナップショット サブスクリプションを削除します。

スナップショット パブリケーションのすべてのアーティクルへのプッシュ サブスクリプションを削除するパブリッシャーで次のスクリプトを実行:
USE <Publication database name>
GO
EXEC sp_dropsubscription @publication = N'<Publication name>', @article = N'all', @subscriber = N'all', @destination_db = N'all'
プル スナップショット サブスクリプションをスナップショット パブリケーションのすべてのアーティクルを削除する次の手順に従います。
  1. サブスクライバーで、次の SQLb スクリプトを実行:
    USE <Subscription database name>
    GO
    EXEC sp_droppullsubscription @publisher = N'<Publisher server name>', @publisher_db = N'<Publication database name>', @publication = N'<Publication name>'
  2. パブリッシャーで次のスクリプトを実行:
    USE <Publication database name>
    GO
    EXEC sp_dropsubscription @publication=N'<Publication name>', @subscriber = N'<Subscriber server name>', @article = N'all', @destination_db = N'all'

トランザクション サブスクリプションを削除します。

トランザクション パブリケーションのすべてのアーティクルに対するプッシュ サブスクリプションを削除するパブリッシャーで次のスクリプトを実行:
USE <Publication database name>
GO
EXEC sp_dropsubscription @publication = N'<Publication name>', @article = N'all', @subscriber = N'all', @destination_db = N'all'
トランザクション パブリケーションのすべてのアーティクルにプル サブスクリプションを削除する次の手順に従います。
  1. サブスクライバーで、次のスクリプトを実行:
    USE <Subscription database name>
    GO
    EXEC sp_droppullsubscription @publisher = N'<Publisher server name>', @publisher_db = N'<Publisher database name>', @publication = N'<Publication name>'
  2. パブリッシャーで次のスクリプトを実行:
    USE <Publication database name>
    GO
    EXEC sp_dropsubscription @publication =N'<Publication name>', @subscriber = N'<Subscriber server name>', @article = N'all', @destination_db = N'<Destination database name>'

マージ サブスクリプションを削除します。

パブリッシャーでの次のスクリプトの実行、プッシュ サブスクリプションを削除する:
USE <Publication database name>
GO
EXEC sp_dropmergesubscription @publication = N'<Publication name>', @subscriber = N'<Publisher server name>', @subscriber_db = N'<Subscription database name>', @subscription_type = N'push'
、プル サブスクリプションを削除する次の手順に従います。
  1. サブスクライバーで、次のスクリプトを実行:
    USE <Subscription database name>
    GO
    EXEC sp_dropmergepullsubscription @publication = N'<Publication name>', @publisher = N'<Publisher server name>', @publisher_db = N'<Publisher database name>'
  2. パブリッシャーで次のスクリプトを実行:
    USE <Publication database name>
    GO
    EXEC sp_dropmergesubscription @subscription_type = N'pull', @publication = N'<Publication name>', @subscriber = N'<Subscriber server name>', @subscriber_db = N'<Subscription database name>'

パブリケーションを削除します。

パブリケーションをサブスクライブするすべてのサブスクリプションを削除すると後、は、パブリケーションを削除できます。 パブリケーション データベースでパブリケーションを削除した後は false に、パブリケーション データベースのレプリケーション データベース オプションを設定する必要があります。 パブリケーションを削除するには、次のシステム ストアド プロシージャを使用できます。
  • sp_droppublication : パブリケーションと、文書に関連付けられたアーティクルを削除する、 sp_droppublication システム ストアド プロシージャを使用することができます。 パブリッシャーでストアド手順を実行、パブリケーション データベースでを実行する必要があります。
  • sp_dropmergepublication : マージ パブリケーションと、マージ パブリケーションに関連付けられているスナップショット エージェントを削除するには、 sp_dropmergepublication のシステム ストアド手順を使用することができます。 アーティクルをパブリケーションに関連付けられたも削除されます。 パブリッシャーでストアド手順を実行、パブリケーション データベースでを実行する必要があります。
  • sp_replicationdboption : sp_replicationdboption システム ストアド プロシージャを使う現在のデータベースには、レプリケーション データベース オプションを設定することができます。 パブリッシャー サーバーでストアド手順を実行する必要があります。
パブリッシャーでの次のスクリプトの実行、スナップショット パブリケーションを削除する:
USE <Publication database name>
GO
EXEC sp_droppublication @publication = N'<Publication name>'

USE master
GO
exec sp_replicationdboption @dbname = N'<Publication database name>', @optname = N'publish', @value = N'false'
パブリッシャーでの次のスクリプトの実行、トランザクション パブリケーションを削除する:
USE <Publication database name>
GO
EXEC sp_droppublication @publication = N'<Publication name>'

USE master
GO
EXEC sp_replicationdboption @dbname = N'<Publication database name>', @optname = N'publish', @value = N'false'
、マージ パブリケーションを削除するパブリッシャーで次のスクリプトを実行:
USE <Publication database name>
GO
EXEC sp_dropmergepublication @publication = N'<Publication name>'

USE master
GO
EXEC sp_replicationdboption @dbname = N'<Publication database name>', @optname = N'merge publish', @value = N'false'

ディストリビューターを削除します。

すべてのサブスクリプションとパブリケーションを削除した後、関連するディストリビューターを削除することができます。 ただし、ディストリビューターを削除する前にパブリッシャーからサブスクライバーの指定を削除する必要があります。 これを行うには、次ストアド プロシージャを使用します。
  • sp_dropsubscriber : 登録済みサーバーから、サブスクライバーの指定を削除するには、 sp_dropsubscriber のシステム ストアド手順を使用することができます。 ストアド プロシージャは、サブスクライバーのレジストリ エントリを削除します。 ストアド プロシージャは、パブリケーション データベースでパブリッシャーで実行がします。
  • sp_dropdistributor : ディストリビューターを削除するには、 sp_dropdistributor のシステム ストアド手順を使用することができます。 ストアド プロシージャは、ディストリビューターで実行します。
パブリッシャーでの次のスクリプトの実行をパブリッシャーからサブスクライバーの指定を削除する:
USE master
GO
EXEC sp_dropsubscriber @subscriber = N'<Subscriber server name>', @reserved = N'drop_subscriptions'
、ディストリビューターを削除する次のスクリプト、ディストリビューターで実行:
USE master
GO
EXEC sp_dropdistributor @no_checks = 1

ストアド プロシージャを使用します。

レプリケーションを削除するときに以下のストアド プロシージャを使用することができますも。
  • sp_removedbreplication : データベースから、ディストリビューターでのデータを更新せず、レプリケーションのすべてのオブジェクトを削除するには、 sp_removedbreplication のシステム ストアド手順を使用することができます。 または、サブスクライバー、サブスクリプション データベース上でパブリッシャー、パブリケーション データベース上でストアド手順を実行する必要があります。 次にこのストアド プロシージャの構文:
    sp_removedbreplication '<Database name>'
  • sp_droparticle : スナップショット パブリケーションまたはトランザクション パブリケーションからアーティクルを削除するには、 sp_droparticle のシステム ストアド手順を使用することができます。 パブリッシュされたアーティクルの 1 つ以上のサブスクリプションがまだ存在する場合は、アーティクルを削除することはできません。 パブリッシャーでストアド手順を実行、パブリケーション データベースでを実行する必要があります。 次にこのストアド プロシージャの構文:
    sp_droparticle @publication = N'<Publication name>', @article = N'<Article name>', @force_invalidate_snapshot = 1

関連情報

詳細については、SQL Server Books Online の以下のトピックを参照してください:
  • パブリッシングおよびディストリビューション (Transact SQL) を無効にする方法
  • パブリケーションとアーティクル (Transact SQL) を削除する方法
  • プッシュ サブスクリプション (Transact SQL) を削除する方法
  • プル サブスクリプション (Transact SQL) を削除する方法
  • [匿名サブスクリプション (Transact SQL) を削除する方法
  • パブリケーションとアーティクル (Enterprise Manager) を削除する方法
  • プッシュ サブスクリプション (Enterprise Manager) を削除する方法
  • プルまたは匿名サブスクリプション (Enterprise Manager) を削除する方法

プロパティ

文書番号: 324401 - 最終更新日: 2005年11月23日 - リビジョン: 3.3
この資料は以下の製品について記述したものです。
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
キーワード:?
kbhowtomaster kbstoredproc kbreplication kbmt KB324401 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:324401
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com