Aracılığıyla paylaş


sp_mergecleanupmetadata (Transact-SQL)

Should be used only in replication topologies that include servers running versions of Microsoft SQL Server prior to SQL Server 2000 Service Pack 1.sp_mergecleanupmetadata allows administrators to clean up metadata in the MSmerge_genhistory, MSmerge_contents and MSmerge_tombstone system tables.Bu saklı yordam, yayın veritabanı üzerinde yayımcı adresindeki yürütülür.

Konu bağlantısı simgesiTransact-sql sözdizimi kuralları

Sözdizimi

sp_mergecleanupmetadata [ [ @publication = ] 'publication' ]
    [ , [ @reinitialize_subscriber = ] 'reinitialize_subscriber' ]

Bağımsız değişkenler

  • [ @publication = ] 'publication'
    Is the name of the publication.publication is sysname, with a default of %, which cleans up metadata for all publications.yayın Açıkça belirtilmiş olması durumunda önceden mevcut olmalıdır.

  • [ @reinitialize_subscriber = ] 'subscriber'
    Specifies whether to reinitialize the Subscriber.subscriber is nvarchar(5), can be TRUE or FALSE, with a default of TRUE.If TRUE, subscriptions are marked for reinitialization.If FALSE, the subscriptions are not marked for reinitialization.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (başarısız)

Açıklamalar

sp_mergecleanupmetadata sürümlerini çalıştıran sunucuları içeren yalnızca çoğaltma topolojisini tasarlamanız kullanılması gereken SQL Server önce SQL Server 2000 Service Pack 1.Yalnızca dahil topolojiler SQL Server 2000 Service Pack 1 veya sonraki sürümleri kullanması gereken otomatik saklama tabanlı meta veriler temizleme.meta veriler temizleme hakkında daha fazla bilgi için bkz: Birleştirme Çoğaltma nasıl çalışır.Saklı yordamı çalıştıran Bu saklı yordam üzerinde çalıştığı bilgisayarda günlük dosyasının gerekli ve potansiyel olarak büyük büyüme haberdar olun.

Dikkat notuDikkat

Sonra sp_mergecleanupmeta veriler , varsayılan değer olarak, abonelerin adresindeki tüm Abonelikleri içeren yayınların yürütülen meta veriler saklanan MSmerge_genhistory, MSmerge_contents ve MSmerge_tombstone işaretlenmiş reinitialization için abone adresindeki bekleyen tüm değişiklikler kaybolur ve geçerli anlık görüntü eski olarak işaretlenir.

Not

Bir veritabanı birden çok yayınları vardır ve bu yayınların herhangi biri bir sonsuz yayın bekletme süresi kullanır (@ saklama=0), çalışan sp_mergecleanupmetadata temiz birleştirme yukarı değil çoğaltma değişiklik izleme için veritabanı meta veriler.Bu nedenle, sonsuz yayın saklama dikkatli kullanın.

Bu yürütürken saklı yordam, abonelerin ayarlayarak yeniden başlatmak seçebilirsiniz @ reinitialize_subscriber parametresi doğru (varsayılan) veya yanlış.If sp_mergecleanupmetadata is executed with the @reinitialize_subscriber parameter set to TRUE, a snapshot is reapplied at the Subscriber even if the subscription was created without an initial snapshot (for example, if the snapshot data and schema were manually applied or already existed at the Subscriber).Parametre ayarı yanlış yayın yeniden tıklatırsanız, Yayımcı ve abone veri eşitlenmesini sağlamak gerekir çünkü dikkatle kullanılmalıdır.

Değeri ne olursa olsun @ reinitialize_subscriber, sp_mergecleanupmetadata varsa sürekli başarısız bir Yayımcı veya republishing Abone tarafında değişiklikleri karşıya yüklemeye çalıştığınız işlemlerini birleştirmek saat saklı yordamı çağrılır.

Sp_mergecleanupmetadata reinitialize_subscriber @ ile yürütme = true:

  1. Onu önerilir, ancak gerekli değildir, yayın ve abonelik veritabanları için tüm güncelleştirmeleri durdurun.Güncelleştirmeleri devam ederseniz, bu yana son birleştirme Abone tarafında yapılan güncelleştirmeler yayın yeniden, ancak veri yakınsaması tutulan kaybolur.

  2. Bir birleştirme Birleştirme Aracısı'nı çalıştırın.Sizin kullanmanızı öneririz –Validate at her aboneye Birleştirme Aracısı Çalıştır Aracısı komut satırı seçeneği.Sürekli modu birleştirmelerinin çalıştırıyorsanız, bakın Sürekli modu birleştirmelerinin için özel hususlar Bu bölümde daha sonra.

  3. Tüm birleştirmelerinin tamamladıktan sonra yürütmek sp_mergecleanupmetadata.

  4. Yürütme sp_reinitmergepullsubscription veri yakınsaması emin olmak için adlandırılmış veya anonim istek temelli abonelik kullanarak tüm aboneler üzerinde.

  5. Sürekli modu birleştirmelerinin çalıştırıyorsanız, bakın Sürekli modu birleştirmelerinin için özel hususlar Bu bölümde daha sonra.

  6. Anlık görüntü dosyaları için tüm birleştirme yayımları katılan tüm düzeylerde yeniden.anlık görüntü görüntü oluşturmadan birleştirmeyi denerseniz, anlık görüntü görüntü yeniden üretmek isteyen bir ileti alırsınız.

  7. yayın veritabanı yedekleyin.Bunun yapılmaması geri yükleme yükledikten sonra birleştirme hatası neden olabilir yayın veritabanı.

Sp_mergecleanupmetadata reinitialize_subscriber @ ile yürütme = yanlış:

  1. Stop tüm güncelleştirmeleri yayın ve abonelik veritabanları için.

  2. Bir birleştirme Birleştirme Aracısı'nı çalıştırın.Sizin kullanmanızı öneririz –Validate at her aboneye Birleştirme Aracısı Çalıştır Aracısı komut satırı seçeneği.Sürekli modu birleştirmelerinin çalıştırıyorsanız, bakın Sürekli modu birleştirmelerinin için özel hususlar Bu bölümde daha sonra.

  3. Tüm birleştirmelerinin tamamladıktan sonra yürütmek sp_mergecleanupmetadata.

  4. Sürekli modu birleştirmelerinin çalıştırıyorsanız, bakın Sürekli modu birleştirmelerinin için özel hususlar Bu bölümde daha sonra.

  5. Anlık görüntü dosyaları için tüm birleştirme yayımları katılan tüm düzeylerde yeniden.anlık görüntü görüntü oluşturmadan birleştirmeyi denerseniz, anlık görüntü görüntü yeniden üretmek isteyen bir ileti alırsınız.

  6. yayın veritabanı yedekleyin.Bunun yapılmaması geri yükleme yükledikten sonra birleştirme hatası neden olabilir yayın veritabanı.

Sürekli modu birleştirmelerinin için özel hususlar

Sürekli modu birleştirmelerinin çalıştırıyorsanız, aşağıdakilerden birini yapmalısınız:

  • Birleştirme Aracısı durdurmak ve daha sonra olmadan başka bir birleştirme gerçekleştirmek -sürekli parametresi belirtildi.

  • Yayını ile devre dışı sp_changemergepublication yayın durumu yoklama herhangi sürekli modu birleştirmelerinin başarısız olmasını sağlamak için.

    EXEC central..sp_changemergepublication @publication = 'dynpart_pubn', @property = 'status', @value = 'inactive'
    

Tamamladığınızda, adım 3 çalışan / sp_mergecleanupmetadata, nasıl, onları durdurdu üzerinde alarak sürekli modu birleştirmelerinin sürdürmek.Ya da:

  • Ekleme –Continuous yeniden Birleştirme Aracısı parametresi.

  • yayın ile yeniden sp_changemergepublication.

    EXEC central..sp_changemergepublication @publication = 'dynpart_pubn', @property = 'status', @value = 'active'
    

İzinler

Yalnızca üyeleri sysadmin sabit sunucu rolü veya db_owner sabit veritabanı rolü olabilir yürütmek sp_mergecleanupmetadata.

Bunu kullanmak için saklı yordam, Yayımcı çalışan SQL Server 2000.The Subscribers must be running either SQL Server 2000 or Microsoft SQL Server 7.0, Service Pack 2.