Kategori arşivi: SQL Server, Oracle

Sql Server 2000, Sql Server 2005, Sql Server 2008, Sql Server 2012, Sql Server Reporting Services, Oracle, SSIS SQL Server Integration Services

SQL Server Data Replication (Veri Yineleme) – II

Önceki yazıda replikasyonla ilgili terminolojiyi anlatmaya çalıştık. Bu yazıda SQL 2000 ve 2005 üzerinde replikasyon türlerinin nasıl kurulacağını örneklendirelim. Aynı makine üzerinde koşan iki tane SQL Server 2000 instance’imiz var. Birinin adı WXX diğerinin adı WXX\KAFKA. WXX sunucusunu yayıncı ve dağıtıcı, WXX\KAFKA sunucusunu da abone olarak yapılandıracağız. WXX üstündeki KAYNAK isimli veritabanını yayınlayacağız. Sunucuları ilklendirmek ve full backup’ın snapshot klasörüne sorunsuz yüklenmesi ve diğer işlemler için SQL Server Agent servisinin yetkili bir domain ile başlatmak doğru bir çözüm olur. Okumaya devam et

SQL Server Data Replication (Veri Yineleme) – I

SQL Server’in sürekli kullanılabilirlik için desteklediği işlemlerden biri de replication modelidir. Replication kısaca verileri merkezi konumdan alıp farklı konumlarda yedekleme işlemidir. SQL Database Replication modelinde kullanılan kavramları açıklayıp bu modelin nasıl oluşturulacağını örneklendirelim. Replication yöntemi tüm SQL Server’in tüm sürümlerinde gerçekleştirilebilir. Express sürümü, Merge ve Transactional replication yöntemlerinde sadece subscriber olarak kullanılabilir.
Publisher (Yayıncı): Üye veritabanlarına veri gönderen merkezi sunucu ya da veritabanı. Replikasyondaki kaynak verinin bulunduğu yerdir.
Subscriber (Abone): Merkezi veritabanından verileri alan sunucu ya da veritabanı. Abonele varsayılan olarak merkezi veritabanının salt-okunur (read-only) kopyasına sahiptir ancak farklı bir konfigürasyonla abonelerde de değişikliğe izin verilebilir veya yapılan değişiklikler merkezi veritabanına yansıtılabilir.
Distributor (Dağıtıcı): Yayıncı ile abone arasındaki veri akışını yöneten sunucu. Bu amaçla < ı>distribution isimli veritabanına sahiptir. Bu veritabanında veri ve şema bazında yapılmış değişiklikler tutulur. Bir veritabanı sunucusu aynı anda hem publisher hem de distributor rolünde olabilir.
Article (Makale): Yayıncı tarafından yayınlanan içerik. VTYS’de üye sunuculara gönderilecek veritabanı nesneleridir (table, view, stored procedure). Makale koleksiyonu publication (yayın) olarak tanımlanır.
Push ve Pull Subscription (Abonelik gönderme ve çekme): Push subscription’da distributor verileri subscriber veritabanına kopyalar. Bu yöntemde işin yükünü distributor çeker. Pull subscription’da ise subscriber kendisi distributor’dan verileri çeker yani işin yükü abonelere verilmiş olur. Okumaya devam et

SQL Server Log Shipping (Günlük Gönderme)

SQL Server yüksek erişilebilirlik çözümlerinden olan Log Shipping modelinde öncelikle aktif (birinci) sunucunun full backup’ı alınıp ikinci sunucuya kopyalanır ardından belirli peryodlarda birinci sunucunun log backup’ı alınıp ikinci sunucuya kopyalanır. Böylece iki sunucununun veri tabanı düzeyinde aynı olması sağlanmış olur. SQL Server 2000 üzerinde log shipping işlemi için Enterprise Manager’ın Database Maintenance Plan Wizard aracı kullanılır. Bu aracı kullanmadan önce aşağıdaki notları dikkate almamız gerekir. Okumaya devam et

SQL Server Yüksek Erişilebilirlik (High Availability)

SQL Server, Oracle gibi büyük ölçekli veri tabanı sistemlerinin özellikle kurumsal uygulamalarda tercih edilme nedenlerinden biri daha fazla yüksek erişilebilirlik(High Availability) sunmalarıdır. Yüksek erişilebilirlik, 7×24 çalışan sistemlerin gerek otomatik gerekse manual sebeplerden dolayı yazılım veya donanımdan kaynaklanacak kesintilere uğramaksızın hizmet vermesidir. Internet gibi dağıtık ortamlarda hizmet veren sistemlerin kısa da sürse kesintiye uğraması önemsenecek maddi kayıplara neden olabilmektedir. Büyük yazılım firmaları sistemlerin 7×24×365 hizmet vermesini garanti etmek için çeşitli çözümler sunmaktadır. Kurumların fiyat-performans ikilisini gözönünde bulundurarak bu çözümlerden birini uygulaması gerekir. Okumaya devam et

Veritabanı Otomatik Küçültme (Auto Shrink)

SQL Server üzerinde bir veritabanı oluşturduğumuzda veritabanının sahip olduğu data ve log dosyalarının başlangıç büyüklük değerlerini de belirleriz. Aynı zamanda veritabanının ileride büyüme ihtiyacı duyduğunda nasıl hangi oranda büyüyeceği de data ve log dosyası bazında belirtilir. Eğer veritabanı için maksimum bir büyüklük verilir ve bunu aşmaması işaretlenirse maksimum değerden daha fazla yere ihtiyaç duyması durumunda sistem hata verecektir. Bu yüzden veritabanlarının büyüklük ayarlarının sistemin amacına uygun düzenlenmesi gerekir. SQL Server özellikle büyük veritabanlarında index düzenlemeler, geniş çaplı güncellemeler, toplu kaydetme veya silme gibi yoğun disk işlemlerinde o veritabanını büyütme ihtiyacı duyar. Bu büyüme kalıcı veya geçici olabilir. Özellikle kalıcı durumlarda sistemin kullandığı geniş disk alanını serbest bırakmak veya veritabanı dosyalarında zamanla kullanılmayan data page’leri yok etmek için daraltma (shrinking) işlemi gerçekleştirilir. Okumaya devam et

SQL Server’de yedekleme ve geri yükleme – II (RESTORE)

Veri tabanlarını Yeniden Kurma(RECOVERY işlemi)
Önceki yazıda yedekleme stratejilerinden ve backup işlemlerinin nasıl yapılacağından bahsettik. Şimdi bu yedekleri sistem çöktüğü zaman veya herhangi bir durumda nasıl kullanacağımızı, bunları kullanarak nasıl bir geri yükleme yapacağımızı işleyeceğiz. Alınmış yedeklerden veri tabanını ayağa kaldırmadan önce elimizdeki yedek dosyalarının doğruluğundan, formatından emin olmalıyız. Bu işlem için Management Studio kullanılabildiği gibi aşağıdaki T-SQL komutları da kullanılabilir. Okumaya devam et

SQL Server BACKUP RESTORE Yedekleme Geri Yükleme – I

SQL Server’da BACKUP RESTORE işlemi nasıl yapılır?

Bütün veri tabanı sistemlerinde verilerin yedeklenmesi(BACKUP) ve gerektiği zaman yedeklerden geri dönülmesi(RESTORE) en çok kullanılan servislerinden biridir. Her veri tabanı sisteminin dosya ve veri formatı farklı olduğu kendilerine özgü BACKUP-RESTORE işlemleri sunar. Gerek kullanıcıların(veri tabanı yönetici veya geliştiricilerin) gerekse bilgisayar yazılımlarının(virüs, zararlı scriptler) gerekse doğal felaketlerin neden olacağı beri kaybını azaltmanın ilk süreci, doğru bir yedekleme stratejisinin oluşturulması ve bu strateji doğrultusunda düzenli olarak yedek alınmasıdır. Yedeklerin ne sıklıkla veya ne türde alınacağı veya nereye alınacağı(disk, type)tamamıyla o veri tabanının hangi amaçla ve ne yoğunlukta kullandığıyla ilgilidir. SQL Server, gerek doğrudan script yardımlarıyla gerekse sağladığı araçlarla bu işlemlerin hızlı ve kolayca yapılmasını sağlamaktadır. Aynı zaman bu işlemlerin otomatiğe bağlanıyor olması da önemli bir kolaylık sağlamıştır. Okumaya devam et

Ghost Cleanup, DBCC IND, DBCC PAGE, DBCC LOG

SQL Server üzerinde row, page veya extend bazında DELETE işlemi yapıldığı zaman, SQL Server silinmek istenen nesneleri o anda hemen silmez onları Ghost Object(Hayalet Nesne) olarak işaretleyip askıya alır. Yani silme işlemi fiziksel değil mantıksal olarak gerçekleşir. Sistemin durumuna göre bir süre sonra arka tarafta çalışan bir processle fiziksel silme işlemini gerçekleştirir. Ghost Record Cleanup olan isimlendirilen bu process, DELETE işlemi esnasında SQL Server yapacağı fiziksel silmeden yaşayacağı performans sorununu aşmak için oluşturulmuş bir yöntemdir. Ayrıca silinmiş nesneleri daha hızlı bir şekilde rollback etmek amacıyla da bu sistem kullanılır. Okumaya devam et

ROW_NUMBER, PIVOT, UNPIVOT, OUTPUT, APPLY

ROW_NUMBER, RANK, DENSE_RANK, NTILE, PIVOT, UNPIVOT, OUTPUT, CROSS APPLY, OUTER APPLY, EXCEPT, INTERSECT, BEGIN TRY, END TRY, BEGIN CATCH, END CATCH, C# Assembly,CLR, Common Table Expression (CTE)

SQL Server 2005 ile birlikte T-SQL dilinde güncellemeler, yeni ifadeler geliştirildi. Bu yeni gelen özelliklerden bazıları DDL (data definition language) bazıları da DML (data manipulation language) tarafında gerçekleştirildi. Bunların başında PIVOT ve UNPIVOT komutları, CTE, DDL Trigger, exception handling(TRY/CATCH block), TOP ifadesinin genişletilmesi, OUTPUT ifadesi gelmektedir. Bu yazıda bu yeni özellikleri örneklendireceğiz. Okumaya devam et

SQL Server 2005’te yeni ne var – II [Programlama]

Önceki yazıda SQL Server 2005 veri tabanı yöneticileri için geliştirdiği yenilikleri vermeye çalıştık. Bu yazıda da uygulama geliştiriciler için gelmiş olan yeni özellikleri, T-SQL’deki değişiklikleri özetlemeye çalışacağız. SQL Server 2005 ile birlikte programcılar için gelen en önemli iki özellik, .NET Framework desteği ve daha kullanışlı, yetenekli bir XML teknoloji desteğidir. .NET Framework desteği, VS.NET IDE’sinde SQL Server’in yönetimini, XML desteği de sunucunun farklı platform ve cihazla iletişimi sağlamaktadır.
Developerlar için sunulan yenilikleri şu başlıklarda toplayabiliriz: Okumaya devam et