Yusuf KAHVECİ
Senior Database Administrator
@2014
www.sqlturkiye.com
[email protected]
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
LOG SHIPPING
1
YUSUF KAHVECİ KİMDİR ?
Merhaba Sevgili Arkadaşlar ,
1987 İstanbul doğumluyum. Bilgisayar Mühendisliği ve
İktisat mezunuyum. İş hayatına Eğitimci olarak başladım ve
senelerdir Özel Kurumlarda Senior DBA olarak devam
etmekteyim.
Uzmanlık alanlarım MS SQL Server ve Oracle ’dır.
Şu anda özel bir firmada Senior Database Administrator
olarak görevime devam etmekteyim.
Bana ulaşabileceğiniz bilgiler E- Book içerisinde mevcuttur.
Kişisel Web Adresimden ve mail
adreslerimden bana
ulaşabilirsiniz.
Kurucusu olduğum SQL TÜRKİYE
Platformum üzerinden istek ve
öneilerinizi iletebilir görüşlerinizi
paylaşabilirsiniz.
Platformumuzun temel amacı
Türkçe kaynağım az olduğu bu
dönemde SQL SERVER Yönetimi ,
BI,DWH,PDW vb. Teknolojilerin
sizlere aktarılması ve size
yardımcı olacak ve profesyonel
ekibimiz ile sizlere sunacağımız
bilgi kaynaklarından
faydalanabilir ve sizlerde bu bilgi
kaynağına katkıda
bulunabilirsiniz.
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Saygılarımla …
2
LOG SHIPPING MİMAİRİSİ
İlk önce Log Shipping yapacağımız veritabanımızı oluşturuyoruz.
USE [master]
GO
CREATE DATABASE [LogShippingSQLTR]
CONTAINMENT = NONE
ON PRIMARY
( NAME = N'LogShippingSQLTR', FILENAME = N'D:\DATA\LogShippingSQLTR.mdf' , SIZE = 4096KB
, MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
LOG SHIPPING YAPISI
3
( NAME = N'LogShippingSQLTR_log', FILENAME = N'D:\LOG\LogShippingSQLTR_log.ldf' , SIZE =
1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO
Daha sonra oluşturduğumuz veritabanı üzerinden bir adet FullBackup alalım.
BACKUP DATABASE [LogShippingSQLTR] TO DISK = N'E:\Backup\LogShippingSQLTRFull.bak' WITH
NOFORMAT, NOINIT, NAME = N'LogShippingSQLTR-Full Database Backup', SKIP, NOREWIND,
NOUNLOAD,COMPRESSION, STATS = 10
GO
Şimdi ise Log Shipping ayarlarımızı yapalım.
İlk olarak Transaction Log Backup ‘larımızı alacağımız Primary Server ‘da Folder ‘ımızı paylaşıma
açalım.
Folder ‘ımızı Share yapmak için üzerine
gelip sağ tıklıyoruz ve Proparties sekmesinden Sharing kısmına giriyoruz ve Share butonuna basıp
her iki tarafta da tanımlı ve yetkili kullanıcımızı aktarımın sağlıklılığı açısından girerek OK ‘e
basıyoruz.
Daha sonra Share path bilgisini bir yere not ediyoruz. ( \\DBATest\LogShipping )
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Bu klasöre hem birinci hem de ikinci sunucu erişecek şekilde yetkilendirmelerimizi yaptıktan sonra
“genelde garanti olması açısından Everyone hakkı verilir fakat security problemi yaşayacağınızdan
gerekli yetkilendirmeleri kısıtlayabilirsiniz.”
4
Açılan ekranda Enable this as a primary in log shipping configuration sekmesini tıkklıyoruz ve
daha sonra Backup Settings butonuna basarak Transaction Log Backup ayarlamalarımızı
gerçekleştiriyoruz.
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Bu işlemden sonra Log Shipping uygulayacağımız veritabanımız üzerine gelip sağ tıklayıp Task
sekmesinden Ship Transaction Logs… sekmesine tıklıyoruz ve Log Shipping ayarlamalarını
yapacağımız ekran karşımıza gelmektedir.
5
If the Backup Folder is located on the primary server type a local path to the folder bölümüne
ise Transaction Log Backup ları aldığımız Local Path adresimizi yazıyoruz.
Delete files older then bölümünde ise kaç günden önce ki logların silineceğini belirtebiliyoruz.
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Açılan pencerede Network path to backup folder bölümüne önceden kaydettiğimiz Folder
Sharing path adresimizi giriyoruz.
6
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Tüm bu işlemlerden sonra OK butonuna basıyoruz ve aşağıda ki ekranda Add butonuna basarak
işlemlerimize devam ediyoruz…
7
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Açılan pencerede Connect butonuna tıklayarak Secondary makinasına erişimi sağlıyoruz.
8
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Gerekli ayarlamaları gerçekleştirdikten sonra Connect işlemimizi gerçekleştiriyoruz.
9
Bu süreci tamamladıktan sonra Destination folder copied files bölümüne Secondary sunucunun
Network Path ‘ini yazıyoruz. (\\DBATEST2\LogShipping)
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Restore Options butonuna basarak Transaction Log ların Restore edilecek yer bilgilerini giriyoruz.
1
0
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Daha sonra Restore Transaction Log kısmında ise ;
1
1
OK butonuna basarak Log Shipping operasyonumuzu gerçekleştirmiş oluyoruz. Schedule ‘lara
dokunmadık ve Default ayarlarında yani 15 dakika olarak bıraktık. Log senkronizasyonumuz 15
dakika da bir gerçekleşecek. Veritabanımızın bir yedeğide Secondary makinada 15 dakika geriden
gelmektedir.
Log Shipping senaryoları High Availability değilde Disaster Recovery senaryosu olarak kullanmak
daha mantıklıdır.
Örneğin İstanbul ‘da bir AlwaysOn yapınız mevcut ve İzmirde ki Data Center ‘ınıza da sisteminizi
yormadan data transferi gerçekleştirmek istiyorsunuz. Disaster durumunda en son nokta olarak
belirlediğiniz aralıkta ki yani tahammül edilebilir data kaybınızı göz önüne aldığınızda İzmir ‘e Log
Shipping ile aktardığınız datalardan kaldığınız yerden ufak bir data kaybı ile devam edebilirisniz.
Örneğiniz bizim örneğimizde 15 dakikalık bir kayıp söz konusudur.
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Standby Mode ‘unu işaretliyoruz ve Schedule kısmını istediğiniz şekilde set edebilirsiniz.
1
2
E-Book: Log Shipping Mimarisi – www.sqlturkiye.com
Primary
Secondary
1
3
Download

log shıppıng - SQL Türkiye