SQL Server sahip olduğu Export/Import aracıyla diğer veritabanlarına göre bir adım önde diyebiliriz. SQL Server üzerinde çalışırken sorgu sonucunu Excel formatında dışarı çıkarmak her zaman ihtiyaç duyulan bir durum olmuştur. Excel’de SQL Server’e import veya ters yönde export işlemi için en çok kullanılan yöntemler SQL 2000′de Data Transformation Services (DTS), SQL 2005′te SQL Server Integration Services (SSIS) ve her iki sürümde Bulk Copy (BCP) araçlardır. Bu araçların özelliği grafiksel ortam sunmaları ve genellikle Job’lar aracılığıyla çalıştırılıyor olmasıdır. DTS, SSIS ile nasıl yapılacağı kolay bir işlemdir. Bu yazıda BCP ve farklı T-SQL alternatiflerini inceleyeceğiz. Read the rest of this entry »
Fragmentation (parçalama) kavramı bilgisayar biliminde bellek, disk gibi kaynaklar üzerindeki birimlerin düzensiz parçalar (fragment) haline dönüşmesi ve bunun sonucunda düzenli boş alanın azalmasıdır. Dağılmış bu parçaları birleştirme işlemine defragmentation (birleştirme) denilir. SQL Server’da uzun süre veritabanı üzerinde yapılan silme, güncelleme, ekleme işlemleri sonucunda veritabanı dosyasında data veya index kayıtları arasında boş alanlar oluşur. Boş alanlar birbirleriyle ilişkili dolu kayıtların arasında olduğu için herhangi bir kayda erişme durumunda dağılmış kayıtlar arasında çok dolaşılacağından ciddi zaman kaybedilmektedir. Veritabanı dosyasındaki boş ve dolu alanları bir tarafa toplayıp dosyayı daha ekonomik, ergonomik kullanmak için belli dönemlerde defragmantasyon yapmak gerekir. Read the rest of this entry »
Daha önce yazdığımız ipuçlarına ek olarak bu yazıda aşağıdaki ipuçlarını vereceğiz.
- SQL Server servisi her çalıştığında bazı komutları nasıl çalıştırabiliriz.
- SQL Server Enterprise Management konsolde açılmıyor.
- “IS NULL” ve “= NULL” arasındaki fark nedir.
- COALESCE(), ISNULL() ve NULLIF() fonksiyonlar arasındaki fark nedir.
- NEWSEQUENTIALID() ve NEWID() arasındaki fark nedir.
- TRUNCATE ile DELETE arasındaki fark nedir.
- T-SQL aracılığıyla uzaktan erişim nasıl açılır/kapatılır.
- Veritabanı dosyalarının büyüklüğünü her gün mail ile nasıl alabilirim.
- İki saat arasındaki farkı saat olarak yazdırmak
SQL Server üzerinde otomatik sorgular hazırlayıp sorgu sonuçlarını raporla ilgili kişilere mail olarak atmak veya ftp aracılığıyla belirlenmiş bir alana aktarmak özellikle kurumsal uygulamalarda ihtiyaç duyulan bir durumdur. Bu yazıda SQL Server üzerinde mail ve ftp işlemi nasıl yapılacağını örneklendireceğiz. Read the rest of this entry »
SQL Server 2005 ile gelen yeniliklerden biri olan “database snapshot”, veritabanının herhangi bir andaki salt-okunur kopyasının alınmasıdır. Bu işlemin normal kopyalamadan farkı sadece değişiklik yapılmış kayıtları fiziksel olarak almasıdır. İstemcilerden snapshot’a bir istek geldiği zaman sorgulanan kayıt değişmişse sorgunun sonucu snapshot’tan gelir değişmemişse orijinal veritabanından gelir. Snapshot’un normal kopyalama gibi veritabanını olduğu gibi fiziksel kopyalamamsı kopyalama sürecinin daha hızlı olmasını ve daha az kaynak harcamasını sağlamaktadır. Snapshot’un temel amacı değişmiş kayıtların orijinal hallerini saklayıp gerektiğinde düzeltmektir. İstemci sorgularının doğrudan snapshot üzerinden yapılması değişmemiş kayıtlar için ana veritabanına gidip gelindiği için performans sorunu yaşatacaktır. Read the rest of this entry »
SQL Server 2005, sistemin sürekliliği için sunduğu yöntemlerden biri de Database Mirroring yöntemidir. Service Pack 1 ile birlikte sunulmuş olan bu yöntem iki sunucu arasında log transaction kayıtlarını taşıyarak bu sunucuların senkronize olmasını sağlar. Database Mirroring, standard, enterprise veya developer sürümleri tarafından desteklenir. Bu yazıda bu modelin nasıl kurulacağını örneklendireceğiz. Read the rest of this entry »
Ö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. Read the rest of this entry »
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. Read the rest of this entry »
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. Read the rest of this entry »
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×24x365 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. Read the rest of this entry »



Recent Comments