Ay: Eylül 2016

Parameter Sniffing

Parameter Sniffing; kullandığımız stored procedure’lerin, en son compile edilmiş hali için gelen parametrelere göre oluşturulan query plan’ının cache’de tutularak, başka parametlerle geldiğinde yeniden query plan oluşturmadan cache’deki query plan’ın kullanılması sonucu oluşur.  Kısaca stored procedure en son compile edildiğinde gelen parametreye göre bir query plan oluşturulduğunda bu query plan gelecek bir sonraki parametre için uygun […]

Admin olmayan Loginlerin dmw’leri ve dmf’leri okuyabilmesi için gerekli yetkiyi vermek

Bazı kullanıcılar veritabanlarına gelen sorguları görmek için yetkiye ihtiyaç duyabilirler. SQL Server dmw(Dynamic Management View)’ler ve dmf(dynamic management functions)’ler vasıtasayıla bu sorguları loginler görebilir. Fakat dmw’leri ve dmf’leri sorgulayabilmek için login’e server seviyesinde VIEW_SERVER_STATE yetkisinin verilmesi gerekir. USE [master] GO GRANT VIEW SERVER STATE TO [Loginİsmi] GO Login’e bu yetkiyi verdiğimizde kendi veritabanının dışında o […]

Diskimizi maksimum performansta kullanabiliyor muyuz?

Bu makaleyi anlamak için aşağıdaki kavramları bilmemiz gerekir. Page: SQL Server storage’daki en temel birimdir. Her Page 8 KB alandan oluşur. Extent: Fiziksel olarak sıralı 8 page’in bir araya gelmesiyle oluşur. Boyutları 64 KB’tır. Extentler, page’lerin verimli bir şekilde yönetilmesine yardımcı olur. Extentler kendi aralarında ikiye ayrılır. Mixed Extent: Farklı nesnelere ait page’lerin bir araya […]

Instant File Initialization

Instant File Initialization  SQL Server 2005 ve Windows Server 2003-Windows XP ile gelen bir özelliktir. Bu özelliği aktif hale getirebilmek için Windows üzerinde SQL Server servis hesabına gerekli yetkilerin verilmesi gerekir. Bu özellik aktif hale getirildiğinde SQL Server’a ait data dosyaları üzerinde yapılacak işlemlerin daha hızlı bir şekilde gerçekleştirilmesi sağlanmış olur.    SQL Server üzerinde;  […]

Veritabanı file group yapısı ve büyük tablolarımızı başka bir file group’ta yeniden oluşturmak

Bu makalede veritabanı ilk oluşturulduğunda, ya da başka bir ortamdan geldiğinde file group yapısını düzenlerken nelere dikkat etmemiz gerektiğinden ve tablolarımızı başka bir file group’a neden ve nasıl aktaracağımızdan bahsedeceğim. Bir tabloyu neden başka bir filegroup’ta oluşturmak gerekebileceğinden bahsedelim. Veritabanı başka bir ortamdan gelmiş, tek mdf file üzerinde oluşturulmuş ve çok büyüdüğü için IO beklemesi […]