SQL Server 2008 Peer  to  Peer  Transactional Replication Kurulumu

SQL Server 2008 Peer to Peer Transactional Replication Kurulumu

Merhaba arkadaşlar kısa bir ayrılığın üzerinden tekrar MSSQL Server üzerinde yapmış olduğum projelerden birini daha size anlatacağım. Konumuz SQL Server 2008 Peer – to – Peer Transactional Replication Kurulumu bu yazının başlığını okuduktan sonra belki de bu nedir diyebilirsiniz, hiç duymamış olabilirsiniz. SQL Server 2008 Peer – to – Peer Transactional Replication; eşdeğer veritabanları arasında olan ve işlem yükünü hafifleten yedeklemeye kolaylık sağlayan bir yapıdır. Örneğin 7/24 hizmet veren bir kurum düşünün ve bu kurumun her türlü yazılım çözümlerine siz destek veriyorsunuz. Merkezde çalışan veritabanınız var ve veritabanı üzerinde çalışmanız gerekiyor, fakat merkezdeki veritabanı üzerinde birçok işlem gerçekleşmesi, o makineye bağlanılması, sizin kendi çalıştığınız makinedeki programlar, bağlantılar vs. Bunlar hep çalışmak istediğiniz veritabanını yorar. Bu yüzden çok büyük firmalar etkileşim halinde çalışan birçok kurumsal firmanın ihtiyaç duyduğu Peer – to – Peer Transactional Replication burada devreye giriyor. Yani ben ISTANBUL’da işlem yapıyorum bu aynı zamanda ANKARA’da ve BURSA’da işlem görüyor ve kayıt ediliyor demektir. Ya da A veritabanınız var ve B veritabanınız var. A merkezde olsun , B de sizin çalıştığınız yazlılım firmasının bünyesinde olsun. Merkezdekine bağlanmak az önce dediğim gibi hem sizi yorabilir hemde merkezdeki veritabanını belki işleminiz yarıda bile kalabilir. Ama kendi sunucunuzdakine bağlanırsanız bu hem sizin için hemde merkezdeki yazılım için avantajdır. Böylelikle kendi sunucunuzda bu veritabanının yedeğini tutmuş olursunuz. Gelelim kurulumuna, bu kadar öenmli bir yapıyı kurmakta kolay değildir ince ayrıntılara dikkat etmeliyiz.



İsimler farklı olabilir fakat tablo isimleri data tipleri aynı olmak zorundadır. Çünkü oluşturduğumuz veritabanlarından birinde işlem yaparken execute ettiğimizde aynı anda diğer veritabanlarımızda da işlem görecektir.
Kurulumunu yapmadan önce ufak bir uyumsuzluk var. SQL Server 2008’den , 2005 sürümüne replikasyon yapamazsınız. Replikasyon yapmanız gereken veritabanları 2005 ise 2005 ve üzeri olmalı, 2008 ise 2008 ve üzeri sürümde olmalı. Burada kurulumundan bahssettiğim replikasyon MSSQL Server 2008 R2’ de oluşturulmuş iki ayrı veritabanıdır.

1) SQL Server Agent aktif olduğundan emin olunuz. Pasif durumda ise Sağ tık Start yaparak servisi aktif hale getiriniz.

2) Agent servisimizi aktif ettikten sonra SQL Server – Object Explorer üzerinde Replication sekmesinde “+” butonuna tıklıyoruz daha sonra Local Publications sağ tık New Publication tıklıyoruz.

Bu işlemi yaptıktan sonra karşımıza New Connection Wizard penceresi çıkıyor ve orada da Veritabanı isimlerimiz yazıyor.Burada yayıncı olarak belirleyeceğimiz veritabanını seçeceğiz ve Next tıklıyoruz.

3) Replication tiplerinden hangi tipi kullanacağımızı seçeceğiz.

Transactional replication kullanacağımız için Transactional replication seçip next diyerek ilerliyoruz.Açılan pencerede karşımıza veritabanımza ait tablolar, saklı yordamlar varsa her türlü özellik yer alıyor ve replikasyon olmasını istediğimiz tabloları vs. Seçiyoruz, sonrasında yine next diyerek devam ediyoruz.

4)Kritik noktadan birisi, replikasyon yapmak istediğiniz veritanabanında tablolar arasında Row ve Column filtreleme yapabilmemiz için bir pencere açılıyor. Eğer filtreleme yapmayacaksak direk Next diyoruz.

5) Daha sonra bir snaphot agent oluşturmamız gerekiyor ki yaptığımız işlemleri takip edip yayınlayabilsin. İlk kutucuğu işaretleyip devam ediyoruz. Aşağıdaki seçenek ise izleyicimizin hangi zaman aralıklarında çalışmasını sağlamak içindir.
Devamında karşımıza Agent Security adında bir pencere çıkıyor, Açılan pencere Snapshot Agent’ a ait Security settings’e tıklayıp,
aşağıdaki resimdeki gibi kutucuğu işaretleyip devam ediyoruz.

Daha sonrasında Create the Publication kutucuğu işaretli bir pencere açılıyor ve aynen devam ediyoruz.
Publication adını vereceğimiz pencere açılıyor. Buraya belirlediğiniz bir publication ismi yazabilirsiniz(Örnek: Deneme).İsmi verdikten sonra Finish butonuna basarak devam ediyoruz ve seçtimiz veritabanında yayınlanmasını istediğimiz tabloları publisher olarak ayarlıyor. Tüm işlerin Success olması durumunda karşımızdaki pencereye Close deyip kapatıyoruz.

6) Evet ilk yayıncı veritabanımızı oluşturduk, aynı işlemleri yaparak ,ikinci veritabanımızı da bu işlemlere sokuyoruz ki Peer – to – Peer yapabilelim. Peer – to – Peer yapabilmemiz için en önemli noktalardan birisi veritabanının bu özelliğini açmalıyız. Yayıncı olan veritabanlarımız için replikasyon oluşturduktan sonra Local Publication kısmı aşağıdaki gibi olacaktır. A ve B benim ayrı 2 veritanabımdır ve bu veritabanları suan yayıncı veritabanlarıdır.

7) Son işlemimiz bu Peer – to – Peer özelliğini açmak üstteki resimde gördüğünüz [A]:YASIN üzerinde sağ tık yapıp Properties’e tıklıyoruz.
Açılan pencerede Allow Peer – to – Peer ‘ ın false olan değerini True yapıyoruz.

Tabiki bu işlemi [A]:YASIN hemde [B]:YASIN için yapıyorsunuz
Bu işleminde ardından veri ekleme silme güncelleme yapıp diğer veritanabınımıza aktarıldığını sorgularla gözlemleyebiliriz.

 

**** ÖNEMLİ NOTLAR ****

  • Birbirine bağlantı kurduğumuz veritabanları isimleri önemli değil fakat, bağlantılı olmasını istediğiniz, eşdeğer verileri tutmasını istediğiniz tabloların isimleri içindeki alan isimleri ve data tipleri aynı olmak zorundadır.
  • Kesinlikle yayıncı veritabanınızın sürümünden düşük başka bir sürüme yayın yapamazsınız(2008’ten, 2005’e). Ancak kendi sürümünüzle aynı yada daha üst sürüme yayın yapabilirsiniz(2005’ten 2008’e).
  • Replikasyon başladıktan itibaren data filter kullanamasınız. Örneğin bir tablonuzun bir sütununu filtrelemek istiyorsunuz. Bu işlemi gerçekleştiremezsiniz.
  • İhtiyaç halinde yeni bir tablo oluşturdunuz, ve bunu aynı zamanda VERİ GİRİLMEDEN önce diğer bağlantılı veritabanlarında da oluşturulmalı ve Publication Properties(resim7) penceresind articles ‘ den oluşturduğunuz tabloyu publish etmelisiniz. Yanına bir tık koyamanız yeterlidir.
  • Kesinlikle 7.adımı yapmadan çalışmaz.
  • Timestamp tipi sütunlarınızdaki değer tutarlılık göstermeyebilir.
  • SQL Server Agent servisini durduğunuz anda yayında durur.

Biraz uzunca bir konu oldu ama bunu yapmak isteyenler için bence az bile :) Kolay gelsin yeni bir yazıda tekrar görüşmek üzere.. Sorularınız için yorum yazmanız yeterlidir.

VN:F [1.9.22_1171]
Rating: 4.7/5 (7 votes cast)
VN:F [1.9.22_1171]
Rating: +3 (from 5 votes)
SQL Server 2008 Peer to Peer Transactional Replication Kurulumu, 4.7 out of 5 based on 7 ratings

1.504 Görüntülenme

 

Cevapla

E-posta adresiniz yayınlanmayacak. Required fields are marked *

*

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

More in Genel, MSSQL, PROGRAMLAMA (22 of 61 articles)