Pazartesi , 23 Ekim 2017

SQL Server Administratiom

SQL Server Execution Plan Mimarisi Kitabim Yayinlandi

Büyük ve orta ölçekli firmalarda veri boyutu artık hızla büyüyor. Veri boyutu büyüdükçe veriye erişirken performans problemleri ile karşılaşılabiliyor. Özellikle hızlı büyüyen sistemlerin ortak noktası zamanla sorgu performanslarının düşmesidir. Bu sebeple performans kaybına sebep olan etkenlerin bulunup düzeltilmesi bir firma için hayati önem taşımaktadır. Bu bağlamda danışmanlık yaptığımız firmalarda ve eğitimlerde en sık karşılaştığımız sorular bir sorguyu nasıl hızlandırabiliriz? Daha ... Devamını Oku »

SQL Server 2016 Instant File Initialization Yeniliği

SQL Server kurulumundan sonra SQL Serverın optimum bir şekilde çalışması için ihtiyaça yönelik olarak farklı özelleştirmeler yapıyoruz. Bu özelleştirmelerden önemli bir tanesi de Instant File Initialization(IFI) özelliğidir.Instant File Initialization değerin aktif edilmesi özellikle büyük ve hızlı büyüyen veritabanları için önerilmektedir. Bu ayar veritabanımızın data dosyaları oluşturulduğunda ya da SQL Server tarafından büyütülmesi gerektiğini bunu daha hızlı yapmak için kullanılmaktadır. Daha hızlı yapmasının ... Devamını Oku »

SQL Server 2016 Row Level Security

Her şirket için kendi verileri hayati önem taşımaktadır. Bu sebeple veritabanı güvenliği büyük önem arz etmektedir. SQL Server üzerinde verilerimizin güvenliğini sağlamak için birçok yöntem kullanılıyor olsa bile en önemlisi yetkilendirme konusudur. Yani veritabanımızda tutulan verilere hangi kullanıcının hangi yetkiler erişebileceğidir. SQL Serverda yetkilendirme yaparken bir kullanıcıya var olan tüm tablolar için okuma yetkisi verebileceğimiz gibi, sadece istediğimiz tabloları sorgulaması ... Devamını Oku »

SQL Server Management Studio Üzerinde Kullanıcıların Görebildikleri Veritabanı Listesini Kısıtlamak

Hemen hemen her eğitimde konu SQL Server güvenliğine geldiğinde sık karşılaştığımız sorulardan biri de kullanıcının yetkisi olmadığı halde SQL Server Management Stdio kullanarak SQL Servera bağlandıklarında tüm veritabanlarını görmelerinin nedenidir. Aslında bu durum SQL Server ile doğrudan ilişkili değildir. SQL Serverı yönetmek için kullandığımız araç olan SQL Server Management Stdio aracının tasarımı yapılırken hızlı açılabilmesi için dinamik olarak oluşturulan ve ... Devamını Oku »

SQL Server 2016 Dynamic Data Masking

SQL Server 2016 ile beraber gelen önemli güvenlik özelliklerinden biri Dynamic Data Masking özelliğidir. Bu özellik sayesinde SQL Serverda tutulan ve sorgulama yapan kullanıcılardan gizlemek istediğimiz önemli verilerimizi kolayca maskeleyebiliyoruz. Maskeleme kavramını biraz açacak olursak, maskeleme işlemi temelde var olan veriyi değiştirmeden sadece kullanıcıya gösterirken verinin aslını değil bir kısmının gizlenerek gösterilmesidir. Örneğin hemen hemen bir çok online satış yapan ... Devamını Oku »

SQL Server 2016 Temporal Table – Bölüm 2

Bir önceki yazımızda SQL Server 2016 ile beraber gelen Temporal tables özelliğine detaylı bir şekilde değinip tablolarımızı nasıl oluşturabileceğimizi gördük. Şimdi ise önceki yazımızda oluşturduğumuz Temporal Table objeleri üzerinde uygulama yapalım. İlk olarak Temporal tablomuzu ve History tablosunu aşağıdaki gibi sorgulayalım. Yukarıdaki resimde gördüğümüz gibi Urun tablomuzda kayıt varken UrunHistory tablomuzda şuan için herhangi bir kayıt yok. Şimdi 1 numaralı ... Devamını Oku »

SQL Server 2016 Temporal Table – Bölüm 1

SQL Serverda bir tablo üzerinde yapılan DML işlemlerinin izlenip yapılan işlemlerin tablomuzla hemen hemen aynı yapıya sahip başka tabloya taşınması, hem tablo üzerinde yapılan değişikliklerin izlenmesi hem de tablomuzda var olan verinin değişim trendini izlemek için hayati öneme sahiptir. Bu sebeple birçok sistemde kullanılan tablolarımızla aynı yapıda ve tablo adının sonuna log veya History ifadesi eklenerek yeni tablolar oluşturulup herhangi ... Devamını Oku »

SQL Serverda Küçük Boyutlu Tablolardaki Yüksek Fragmentation Oranı

İndekslerin fragmantasyon oranlarının düzenli bir şekilde takip edilmesi ve fragmantasyon oranının yüksek olduğu durumlarda indeks üzerinde Rebuild veya Reorganize işlemlerinin yapılması veritabanı performansı için hayati önem taşımaktadır. Özellikle küçük boyutlu tablolarda fragmantasyon oranını kontrol ettiğimizde fragmantasyon oranının yüksek olduğunu, hatta ilgili indeksimizi Rebuild/Reorganize ettiğimizde dahi bu oranın düşmediği görebiliriz. Şimdi hangi durumlarda böyle bir sorunla karşılaşabileceğimizi ve sebebini bir örnek ... Devamını Oku »

SQL Server Error Log Kayitlarinin incelenmesi

SQL Serverın etkin yönetilebilmesi için hem SQL Server tarafından hem de işletim sistemi tarafında oluşturulan SQL Server error logları, system event logları, profiler traceleri, performance counter sonuçları incelenip analiz edilmelidir. Özellikle çok fazla verinin bulunduğu veya bulunabileceği SQL Server error loglarının arasında kayda değer bir şeyler varsa onları bulabilmek ve eğer gerekiyorsa bulduklarımızı düzelmek için bir şeyler yapmamız gerekebilir. SQL ... Devamını Oku »

SQL Server Startup Parametrelerinin Eklenmesi

SQL Server Servisinin başlatılırken alacağı parametreleri ayarlamaktır. Böylece SQL Server servisi başlarken servise bazı parametreler vererek bizim istediğimiz şekilde başlamasını ve çalışmasını sağlayabiliriz. SQL Serverda herhangi bir Startup Parametresi verebilmek için SQL Server Configuration Manager aracından ilgili SQL Server servisini bulup yanda gösterildiği gibi sağ tıklanıp Properties seçeneği seçilip SQL Server servisinin özelliklerinin listelendiği pencereden yapıyorduk. SQL Server 2012 öncesi ... Devamını Oku »