Ara
Generic filters
Exact matches only
Filter by Custom Post Type
Ana Sayfa / SQL SERVER / Sql Server Makale / Sql Server Mirroring (aynalama) ile iki server’ı birbirine bağlama
Sql Server Kısayol Tuşları

Sql Server Mirroring (aynalama) ile iki server’ı birbirine bağlama

Sql Server Mirroring

Sql Server Mirroring  Sql Serverda bulunan senkranizasyon ve bir sql serverın bozulması , fail yada bir şekilde hata vererek çalışmaması durumunda eş zamanlı işlem yaptığı diğer başka bir server?a yaptığı işlemler diyebiliriz.

Mirroring (aynalama) yani bir işlem normal olarak servera kayıt edildiğinde otomatik olarak diğer servera da kayıt eder ve eğer fail ile karşılaşırsa yani çalışmama durumlarında diğer server otomatik olarak devreye girip server?ın çalışmasını ve bilgi kaybını ayrıca ilgili tüm sistemlerin minimum bilgi kaybı ile çalıştırır.

Başlıca özellikleri

-Sistem herhangi bir hata olduğunda (automatic failover)  sistem sayesinde bozuk olan sistem devre dışı kalır ve diğer çalışan sistem devreye çok kısa bir zamanda girer.
-İki serverında devamlı çalışması ve ikisine birden aynı işlemleri yaparak log kullanılarak senkronize olmasını sağlar.

Normal olarak Mirroring yapmak için bize microsoftun önerdiği 3 adet server bilgisayar gerekir.

1.Ana server bilgisayar.

2.Backup alınacak mirroring yapılanbilgisayar.

3.Bilgisayar ilk ikisini kontrol edebilecek bilgisayar. Ancak 2 bilgisayar ilede mirroring yapılarabilir.Tüm transactionlar 1.Bilgisayarda çalışır işlemler onun üstüne sorgulamalar bu bilgisayar ile çalışır.Çalışan sorgulamalar aynı şekilde 2.Bilgisayardada çalışır.Böylece iki bilgisayardaki bilgiler eşitlenmiş olur. Mirroring işlemi veritabanı olarak yapılır.

Mirroring işlemi nasıl yapılır ?

Özetle ;

2 bilgisayar arası mirroring yaparken kontrol eden 3. bilgisayar yoksa zorunlu olarak hepsini 2 bilgisayardayaptırabilir.
1.Ana bilgisayardan veritabanının full backup alınarak

2.Bilgisayara restore edilir.Daha sonra 1.Bilgisayardan log backup alınarak 2.Bilgisayara log restore edilir.Daha sonra Endpointler oluşturalarak , Sql Server Management Studio içerisinde mirroring seçilerek , çalışma modu seçilir.Port ayarlarıyla birlikte çalışmasını sağlayabiliriz.Restore işlemlerini Norecovery olarak yapmalıyız.  Sql Server Agentın çalışması şartdır.

Bunların dışında bir örnekle mirroringişlemini birlikte yapalım.

Seneryoda 2 adet bilgisayarımız bulunmakta.

2 adet sqlserver vardır.1.Bilgisayar Ana bilgisayar sql server1

2.Bilgisayar Sql Server2

1.Bilgisayar ayrıca kontroller witness sunucudur.

1.Bilgisayardaki aşağıdaki işlemler yapılır.

Sql Backup Alınır
BACKUP DATABASE Kaynak TO

DISK=?C:\Veritabani.BAK?
//Log Backup Alınır
Backup Log Kaynak to Disk=?C:\Veritabani_log.bak?

-Alınan backup 2.Bilgisayara restore edilir
RESTORE DATABASE Kaynak
FROM DISK=?C:\Veritabani.BAK?  WITH

NORECOVERY,?Norecovery cok onemli
MOVE ?Veritabani? TO ?C:\Veritabaniadi.mdf?,
MOVE ?Veritabani_Log? TO ?C:\Veritabani.ldf?
-Alınan Log 2.Bilgisayara restore edilir

Restore Log Kaynak from Disk=?C:\Veritabani_log.bak?

with NORECOVERY  ?Norecovery?ye dikkat

?1.Bilgisayar ana bilgisayarda endpoint olusturmaliyiz.
Create Endpoint Aynamala
State= Started as TCP (Listener_Port=5001)
For Database_Mirroring (Role=Witness);

Aynı sorguyu 2.bilgisayardada çalıştırmalıyız.

Daha sonra dışarıdan gelen isteklere yanıt verecek port dinleyicelerini oluşturamalıyız.
Öncelikle 2.Bilgisayarda bunu çalıştırmalıyız

ALTER DATABASE [Veritabani] SET PARTNER = N?TCP://bilgisayar2:5001′

Şimdide Çalışan canlı servera yani
bilgisayar1de aşağıdaki kodları çalıştıralım

ALTER DATABASE [Veritabani] Set Partner= ?TCP://bilgisayar1:5002′;

En son olarak kontroller olarak çalışıcak bilgisayarı göstermemiz gerekecek.Ana bilgisayarda serverda yani bilgisayar1 de aşağıdaki kodu çalıştırın

ALTER DATABASE [Veritabani] SET WITNESS = N?TCP://bilgisayar1:5003′

Artık çalışmaya başlamış durumdadır.Eğer bir hata alırsanız yazıdaki gibi adımları tek tek yapmadığınız anlamına gelir.
2.Seçenek olarak service pack 1 kurulu olmadığı için hata alabilirisiniz.

Aşağıdaki cümle ile mirroring durdurabilirisiniz.
ALTER DATABASE [veritabani] SET PARTNER SUSPEND

Aşağıdaki cümle ile mirroringi devam ettirebilirsiniz.

ALTER DATABASE [veritabani] SET PARTNER RESUME


Ayrıca bknz.

Veri tabanı yönetim sistemleri

Veri tabanı yönetim sistemleri veritabanı bilgilerimizin depolanarak yönetilmesini sağlayan, yönetilirken iç yapısında ilişkisel veritabanı yönetimi …

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir