Aracılığıyla paylaş


Yayımlama veri ve veritabanı nesneleri

Bir yayın oluştururken, tablolar ve yayımlamak istediğiniz diğer veritabanı nesneleri seçin.Aşağıdaki veritabanı nesneleri çoğaltma kullanarak yayımlayabilirsiniz.

Veritabanı nesnesi

Anlık Görüntü çoğaltma ve işlem çoğaltma

Çoğaltma Birleştir

Tablolar

X

X

Bölümlenmiş tablolar

X

X

Saklı yordamları – tanım (Transact-SQL ve clr)

X

X

Saklı yordamları – yürütme (Transact-SQL ve clr)

X

Hayır

Görünümler

X

X

Dizin oluşturulmuş görünümler

X

X

Dizin oluşturulmuş görünümler tabloları olarak

X

Hayır

(clr) kullanıcı tanımlı türler

X

X

Kullanıcı tanımlı işlevler (Transact-SQL ve clr)

X

X

Diğer veri türleri

X

X

Tam metin dizinleri

X

X

Şema nesneleri (kısıtlamalar, dizinler, kullanıcı dml tetikleyiciler, genişletilmiş özellikler ve harmanlama)

X

X

Yayımlar oluşturmak

Bir yayın oluşturmak için aşağıdaki bilgileri sağlayın:

  • Dağıtıcı.

  • Anlık görüntü dosyalarının konumu.

  • yayın veritabanı.

  • (Anlık görüntü işlem, güncelleştirilebilir abonelikleri veya birleştirme ile işlem) oluşturmak için yayın türü.

  • Dahil edilecek verileri ve veritabanı nesnelerini (makaleler) yayın.

  • Statik satır filtre yayınları, tüm türleri için sütun filtreleri ve parametreli satır filtreleri ve birleştirmek filtreleri birleştirmek yayımları için.

  • Anlık Görüntü Aracısı zamanlama.

  • Aşağıdaki aracıların çalıştırılacağı hesapları: Snapshot Agent tüm yayınlar için; Günlük Okuyucu Aracısı tüm işlem yayınlar için; Queue Reader Agent abonelikleri güncelleştirmek izin işlem yayınlar için.

  • Bir ad ve açıklama için yayın.

Yayın oluşturun ve makaleleri tanımlamak için

Yayınları ve makaleleri değiştirmek için

Yayınları ve makaleleri silmek için

Not

Bir makale veya yayın silme aboneden nesnelerini kaldırmaz.

Yayımlama tabloları

En yaygın olarak yayımlanmış nesnesi bir tablo.Aşağıdaki bağlantılar publishing tablolar için ilgili alanları hakkında ek bilgi sağlar:

Çoğaltma için bir tablo yayımlarken, abone için hangi şema nesneleri kopyalanması gibi bildirilen bilgi tutarlılığına belirtebilirsiniz bütünlük (birincil anahtar kısıtlamaları, başvuru kısıtlamaları, benzersiz kısıtlamalar), dizinler, kullanıcı dml Tetikleyiciler (ddl Tetikleyiciler olamaz yinelenen), genişletilmiş özellikler ve harmanlama.Yayımcı ve abone arasındaki ilk eşitleme, yalnızca genişletilmiş özellikleri çoğaltılır.Eklemek veya bir genişletilmiş özellik sonra değiştirmek, ilk eşitleme, değişikliği değil çoğaltılır.

Şema seçeneklerini belirtmek için

Bölümlenmiş tablolar ve dizinler

Çoğaltma yayımlama bölümlenmiş tablolar ve dizinler destekler.düzey Türü kullanılan çoğaltma ve yayın ve bölümlenmiş tabloları ile ilgili makaleler için belirlediğiniz seçenekleri desteği bağlıdır.Daha fazla bilgi için bkz: Bölümlenmiş tablolar ve dizinler çoğaltılıyor.

Yayımlama saklı yordamları

Tüm kopyalama türleri çoğaltmak izin saklı yordam tanımları: create procedure her abone için kopyalanır.De durum ortak dil çalışma zamanı (clr) saklı yordamlar, ilişkili derleme de kopyalanır.Yordamlara değişiklikler abonelere çoğaltılır; değişiklikler ilişkilendirilmiş derlemeler için değildir.

Bir saklı yordam tanım çoğaltmak ek olarak işlemsel kopyalama çoğaltma depolanan yordamlar yürütülmesini sağlar.Bu çoğaltılırken yararlıdır sonuçlar büyük miktarda veriyi etkileyen bakım yönelimli saklı yordamları.Daha fazla bilgi için bkz: İşlem çoğaltma yayımlama saklı yordamı yürütme.

Yayımlama görünümler

Her türlü çoğaltma görünümleri çoğaltmak olanak sağlar.View (dizinli görünüm ise, beraberindeki dizinini) abonesi tarafından kopyalanabilir ancak temel tablo da çoğaltılması gerekir.

Dizin oluşturulmuş görünümler, işlem için çoğaltma de dizinlenmiş görünümün de temel tablo çoğaltma gereksinimini ortadan kaldıran bir görünüm yerine bir tablo olarak çoğaltılmasını sağlar.Bunu yapmak için "dizinli görünüm logbased" birini belirtin: seçenekleri için @type parametresi sp_addarticle (Transact-sql).Kullanma hakkında daha fazla bilgi için sp_addarticle, bkz: Nasıl yapılır: Bir makalesi (çoğaltma Transact-SQL programlama) tanımla.

Kullanıcı tanımlı işlevler yayımlama

clr işlevler için create FUNCTION deyimleri ve Transact-SQL işlevleri kopyalanır her abone.De durum ilişkili derleme clr işlevleri de kopyalanır.İşlevleri değişiklikler abonelere çoğaltılır; değişiklikler ilişkilendirilmiş derlemeler için değildir.

Kullanıcı tanımlı türler ve diğer veri türleri yayımlama

Sütun türü kullanıcı tanımlı veya diğer ad veri türlerini kullanan abonelere gibi diğer sütunlar çoğaltılır.create typedeyim çoğaltılmış her türü için Abone tarafında yürütüldüğünde, tablo oluşturulmadan önce.De durum kullanıcı tanımlı türleri, ilişkili derleme her abone için de kopyalanır.Kullanıcı tanımlı türler ve diğer ad ad veri türleri için değişiklikler abonelere çoğaltılır.

Bir tür bir veritabanında tanımlanmış ancak yayın oluşturulduğunda, herhangi bir sütun içinde başvurulmuyor, türü abonelere kopyalanır.Bundan sonra bu tür bir sütun veritabanında oluşturmak ve onu çoğaltmak istediğiniz, önce el ile türü (ve ilişkili derleme kullanıcı tanımlı tür için) her abone için kopyalamanız gerekir.

Tam metin dizinleri yayımlama

create Full-Text Index deyim her abone için kopyalanır ve Abone tarafında tam metin dizini oluşturulur.Tam metin dizinleri alter Full-Text Index kullanarak yapılan değişiklikler çoğaltılır.

Şema yapmadan yayımlanmış nesneler için değiştirir

Çoğaltma destekleyen bir wide aralık şema değişikliklerinin yayımlanmış nesneler için.Aşağıdaki şema değişiklikleri üzerinde uygun yaptığınızda yayımlanmış nesnede bir SQL Server Yayımcı, değişikliği tüm varsayılan olarak yayılır SQL Server aboneleri:

  • TABLO DEĞİŞTİRME

  • GÖRÜNÜMÜ DEĞİŞTİR

  • YORDAMI DEĞİŞTİRME

  • İŞLEVİNİ DEĞİŞTİRME

  • TETİKLEYİCİ DEĞİŞTİRME

Daha fazla bilgi için bkz: Yayını veritabanları üzerinde şeması değişiklikler yapma.

Yayımlama için dikkat edilmesi gereken noktalar

Veritabanı nesnelerini yayımlarken, aşağıdaki sorunları göz önünde bulundurun:

  • yayın ve ilk anlık görüntü oluşturma sırasında veritabanı kullanıcıları için erişilebilir olan, ancak daha düşük faaliyete Yayımcı olduğu saatlerde yayınlar oluşturmak için tavsiye edilir.

  • yayın oluşturulduktan sonra bir veritabanı adı değiştirilemez.Yeniden adlandırmak için ilk çoğaltma veritabanından kaldırmak gerekir.Daha fazla bilgi için bkz: Çoğaltma kaldırma.

  • Bir veya daha çok diğer veritabanı nesneleri üzerinde bağlıdır bir veritabanı nesnesi yayın yapıyorsanız, tüm başvurulan nesneler yayımlamanız gerekir.Örneğin, bir tablo üzerinde bağlıdır bir görünüm yayımlarsanız, tablo da yayımlamanız gerekir.

    Not

    Bir birleştirme yayın bir makale eklemek ve varolan bir makale yeni makale üzerinde bağlıdır, kullanarak her iki makaleler için bir işlem sırasını belirtmek @ processing_order parametresi sp_addmergearticle ve sp_changemergearticle.Aşağıdaki senaryoyu düşünün: bir tablo yayımlamak ancak tabloya başvuran bir işlev yayımlayın.işlev yayımlamak, tablo Abone tarafında oluşturulamaz.Eklediğinizde, işlev yayın için: bir değer belirtmek 1 için @ processing_order parametresi sp_addmergearticle; değerini belirtin ve 2 için @ processing_order parametresi sp_changemergearticle, parametre için tablo adı belirterek @ makale.Bu işleme sırası ona bağlı tablo önce abone adresindeki işlev oluşturmak sağlar.işlev numarası tablo sayısından daha düşük olduğu sürece, her makale için farklı numaraları kullanabilirsiniz.

  • Yayın adları şu karakterleri içeremez: % * [ ] | : " ?\ / < >.

Yayımlama nesneleri üzerindeki sınırlamalar

  • Makaleler ve yayınlanabilir sütun en fazla sayısını yayın türüne göre farklılık gösterir.Daha fazla bilgi için bkz: "Çoğaltma nesneleri" kısmında SQL Server için Maksimum Kapasite Belirtimleri.

  • Saklı yordamlar, görünümler, Tetikleyiciler ve şifreleme ile bir parçası yayımlanamaz olarak tanımlanan kullanıcı tanımlı işlevler SQL Server çoğaltma.

  • xml şema koleksiyonları çoğaltılabilir ancak sonra ilk anlık görüntü değişiklikler çoğaltılır.

  • Yayımlanmış tabloları için işlem çoğaltma birincil anahtar tanımlanmış olmalıdır.Bir tablo bir işlem ise çoğaltma devre yayını, dışı birincil anahtar sütunları ile ilişkili tüm dizinler.Bu dizinler çoğaltma tarafından gerekli.Bir dizin devre dışı bırakmak için ilk olarak bırakın gerekir tablo yayından.

  • İlişkili varsayılan değerleri ile oluşturulan sp_bindefault (Transact-SQL) değil çoğaltılır (ilişkili varsayılan değerleri itiraz alter table veya create table varsayılan anahtar sözcüğüyle oluşturulan varsayılan edilerek).

Şemaları ve nesne sahipliğini

Çoğaltma aşağıdaki varsayılan davranışı ile şemaları ve nesne sahipliğini yeni yayın Sihirbazı vardır:

  • Bir uyumluluk düzey 90 veya daha yüksek olan birleştirme yayımları, anlık görüntü yayınlar ve işlem yayımları makaleler için: Varsayılan olarak, nesnenin sahibi abone adresindeki yayımcı adresindeki ilgili nesnenin sahibi olarak aynıdır.Nesneler kendi şemalarını Abone tarafında mevcut, bunlar otomatik olarak oluşturulur.

  • Uyumluluk düzey 90 günden daha düşük olan birleştirme yayınlarda makaleler için: Varsayılan olarak, sahibi boş bırakılır ve olarak belirtilen dbo abone nesnede oluşturma sırasında.

  • Oracle yayınlarda makaleler için: Varsayılan olarak, sahibi olarak belirtilen dbo.

  • Karakter modu anlık görüntülerini kullanan yayınlarda makaleler için (için kullanılır, olmayan-SQL Server aboneleri ve SQL Server Compact 3.5 SP1 aboneleri): Varsayılan olarak, sahibi boş bırakılır.Sahibi için abone bağlanmak için dağıtım aracısını veya Birleştirme Aracısı tarafından kullanılan hesapla ilişkili sahibi varsayılan.

Nesne sahibi ile değiştirilebilir Makalesi özellikleri - <makale> iletişim kutusu aşağıdaki saklı yordamları ve: sp_addarticle, sp_addmergearticle, sp_changearticle, ve sp_changemergearticle.Daha fazla bilgi için bkz: Nasıl yapılır: Görüntüle ve yayın ve makalesi özellikleri (SQL Server Management Studio'yu) Değiştir, Nasıl yapılır: Bir makalesi (çoğaltma Transact-SQL programlama) tanımla, ve Nasıl yapılır: Görüntüle ve makalesi özellikleri (çoğaltma Transact-SQL programlama) Değiştir.

sql Server'ın önceki sürümlerini çalıştıran aboneleri için veri yayımlama

  • Önceki bir sürüm çalıştıran bir abone yayımlamakta olduğunuz SQL Server, sınırlı işlev sürüm, hem çoğaltma özgü işlevsellik ve işlevselliğini ürün olarakbütün. Örneğin, kullanıcı tanımlı veri türleri veya clr işlevleri çalıştıran aboneleri için yayımlayamazsınız olmaz SQL Server 2000.

  • Birleştirme yayıns kullanımı ne özelliklerini belirleyen bir uyumluluk düzeyi kullanılabilir bir yayın ve önceki sürümlerini çalıştıran aboneleri desteklemek verir SQL Server.

Daha fazla bilgi için bkz: sql Server birden çok sürümünü kullanarak bir çoğaltma topolojisi içinde.

Birden fazla yayın yayımlama tabloları

Çoğaltma yayımlama makaleleri birden çok yayınları (verileri de dahil), aşağıdaki kısıtlamalara destekler:

  • İşlemsel yayım ve bir birleştirme yayın bir makale yayımlanır, emin @published_in_tran_pub özellik için true olarak kümebirleştirme makale. Özellikleri ayarlama hakkında daha fazla bilgi için bkz: Nasıl yapılır: Görüntüle ve yayın ve makalesi özellikleri (SQL Server Management Studio'yu) Değiştir ve Nasıl yapılır: Görüntüle ve makalesi özellikleri (çoğaltma Transact-SQL programlama) Değiştir.

    Ayrıca gereken küme @published_in_tran_pub özellik, bir makaleyi bir işlemsel abonelik bir parçasıdır ve ekinde bir birleştirme yayın.Bu durumda, işlem varsayılan olarak olduğunu unutmayın çoğaltma tabloların salt okunur olarak; ele alınması için Abone tarafında bekler Birleştirme çoğaltması için veri değişiklikleri yaparsa bir tablo bir işlemsel abonelik yakınsaması veri oluşabilir.Bu olasılığını önlemek için böyle öneririz tablo yalnızca karşıdan yükleme, birleştirme yayın olarak belirtilmesi.Bu bir birleştirme engeller karşı karşıya veri abone değiştirir tablo.Daha fazla bilgi için bkz: Yalnızca karşıdan yükleme makaleleri ile birleştirme çoğaltma performansı en iyi duruma getirme.

  • Bir makale bir birleştirme yayını ve kuyruğa alınmış güncelleştirme abonelikleri ile işlem bir yayın yayımlanamaz.

  • Güncelleştirme abonelikleri destekleyen işlem yayınlarda bulunan makaleleri yeniden yükleyemezsiniz.

  • Birden fazla destekleyen işlemsel yayın abonelikleri güncelleştirme sıraya yayımlanan bir makale, aşağıdaki özellikleri tüm yayınları arasında makale için aynı değere sahip olmalıdır:

    Özellik

    Sp_addarticle parametresinde

    Kimlik aralık Yönetimi

    @ auto_identity_range (kullanım dışı) ve @ identityrangemangementoption

    Yayımcı kimlik aralık

    @ pub_identity_range

    Kimlik aralık

    @ identity_range

    Kimlik aralık eşik

    @ Eşik

    Bu parametreler hakkında daha fazla bilgi için bkz: sp_addarticle (Transact-sql).

  • İçinde birden fazla birleştirme yayın bir makale yayımladıysanız, aşağıdaki özellikleri tüm yayınları arasında makale için aynı değere sahip olmalıdır:

    Özellik

    Sp_addmergearticle parametre

    Sütun izleme

    @ column_tracking

    Şema seçenekleri

    @ schema_option

    Sütuna filtre uygulama

    @ vertical_partition

    Abone karşıya yükleme seçenekleri

    @ subscriber_upload_options

    Koşullu Sil izleme

    delete_tracking

    Hata tazminat

    @ compensate_for_errors

    Kimlik aralık Yönetimi

    @ auto_identity_range (kullanım dışı) ve @ identityrangemangementoption

    Yayımcı kimlik aralık

    @ pub_identity_range

    Kimlik aralık

    @ identity_range

    Kimlik aralık eşik

    @ Eşik

    Bölüm seçenekleri

    @ partition_options

    Blob sütun akış

    @ stream_blob_columns

    Filtre türü

    @ filter_type(parametresinde sp_addmergefilter)

    Bu parametreler hakkında daha fazla bilgi için bkz: sp_addmergearticle (Transact-sql) ve sp_addmergefilter (Transact-sql).

  • İşlemsel kopyalama ve filtre uygulanmamış birleştirme çoğaltması destekleyen bir tablo birden fazla yayınlarda yayımlama ve içinde tek bir tabloda abone olma abonelik veritabanı (genellikle bir TOP up senaryo olarak adlandırılır).Yukarı yuvarlama kullanılır konumlardan birinde veri alt kümelerini toplamak için tablo adresindeki merkez abone.Filtre uygulanmış birleştirme yayımları merkez abone senaryoyu desteklemez.Mektup birleştirme için çoğaltma, top up tek bir yayın genellikle parametreli satır filtreleri ile gerçekleştirilir.Daha fazla bilgi için bkz: Parametreli satır filtreleri.