Çoğaltılan tablolar arasındaki farkları karşılaştırın (Replikasyon Programlama)

Şunlar için geçerlidir: SQL Server Azure SQL Yönetilen Örneği

Makale doğrulama, Publisher ve Abone sayfalarında tablo makaleleri için yayımlanan verilerin aynı olup olmadığını kontrol eder. Eğer öyle değilse, yakınsama olmadığını gösterebilir. Daha fazla bilgi için bkz . Çoğaltılan Verileri Doğrulama. Ancak doğrulama yalnızca geçiş veya başarısızlık bilgilerini döndürür ve kaynak ile hedef tablolar arasındaki farklara dair herhangi bir detay vermez. tablediff komut istemi yardımcı programı, iki tablo arasındaki farklılıklara ilişkin ayrıntılı bilgiler sağlar ve hatta bir aboneliği Yayımcıdaki verilerle yakınsama durumuna getirmek için bir Transact-SQL betiği bile oluşturabilir.

Note

Tablediff aracı yalnızca SQL Server sunucuları için desteklenmektedir.

Çoğaltılmış tabloları tablediff kullanarak farklılıklar açısından karşılaştırma

  1. Herhangi bir sunucudaki komut sezarından, bir replikasyon topolojisindeki tablediff Utility'yi çalıştırın. Aşağıdaki parametreleri belirtin:

    • -sourceserver - verilerin doğru olduğu bilinen sunucunun adı, genellikle Publisher.

    • -sourcedatabase - doğru veriyi içeren veritabanının adı.

    • -sourcetable - karşılaştırdığınız makalenin kaynak tablosunun adı.

    • (İsteğe bağlı) -sourceschema - kaynak tablonun şema sahibi, varsayılan şema değilse.

    • (İsteğe bağlı) SQL Server Doğrulaması kullanılarak Publisher'a bağlanırken -sourceuser ve -sourcepassword ile bağlantı kurar.

      Important

      Mümkün olduğunda Windows Kimlik Doğrulama'yı kullanın. SQL Server Kimlik Doğrulaması kullanmak zorundaysanız, kullanıcılardan güvenlik kimlik bilgilerini çalışma zamanında girmelerini istesin. Kimlik bilgilerini bir betik dosyasında depolamanız gerekiyorsa, yetkisiz erişimi önlemek için dosyanın güvenliğini sağlayın.

    • -destinationserver - verilerin karşılaştırıldığı sunucunun adı, genellikle bir abone.

    • -destinationdatabase - karşılaştırılan veritabanının adı.

    • -destinationtable - karşılaştırılan tablonun adı.

    • (İsteğe bağlı) -destinationschema - varsayılan şema değilse de hedef tablonun şema sahibi.

    • (İsteğe bağlı) Aboneye bağlanmak için SQL Server Kimlik Doğrulaması kullanıldığında -destinationuser ve -destinationpassword.

      Important

      Mümkün olduğunda Windows Kimlik Doğrulama'yı kullanın. SQL Server Kimlik Doğrulaması kullanmak zorundaysanız, kullanıcılardan güvenlik kimlik bilgilerini çalışma zamanında girmelerini istesin. Kimlik bilgilerini bir betik dosyasında depolamanız gerekiyorsa, yetkisiz erişimi önlemek için dosyanın güvenliğini sağlayın.

    • (İsteğe bağlı) Sütun düzeyinde karşılaştırma yapmak için -c kullanın.

    • (İsteğe bağlı) -q kullanarak hızlı, satır sayısı ve sadece şema üzerinden karşılaştırma yapın.

    • (İsteğe bağlı) Sonuçları bir dosyaya çıkarmak için -o için bir dosya adı ve yol belirtin.

    • (İsteğe bağlı) Abonelik veritabanında - et için sonuçların ekleneceği bir tablo belirtin. Tablo zaten mevcutsa, önce tabloyu silmek için -dt belirtin.

    • (İsteğe bağlı) Subscriber’daki verileri Publisher’daki verilerle eşleşecek şekilde düzeltmek için bir Transact-SQL dosyası oluşturmak üzere -f seçeneğini kullanın. Her dosyadaki Transact-SQL ifadesi sayısını belirtmek için -df kullanın.

    • (İsteğe bağlı) Bir işlemi tekrar deneme sayısını ve tekrar deneme aralığını belirtmek için -rc ve -ri kullanın.

    • (İsteğe bağlı) Kaynak ve hedef tablolar arasında sıkı şema karşılaştırmasını sağlamak için -strict kullanın.