Database

SQL Sunucunuz Neden Hantal Çalışıyor?

  • İlk nedeni tabii ki donanımdır. Yeterince güçlü bir sunucunuz yoksa tabii ki yavaş çalışır. Ama dikkat edin 16 çekirdekli bir işlemci alınca SQL Sunucu lisansı sizi batırmasın.
  • İkinci nedeni Windows’tur. Server 2003 veya 2008 kullanmak hızını etkiler. Ama 32 bit işletim sistemi kullanmak daha fazla etkiler.
  • Aynı şekilde 32 bit SQL Sunucu kullanmak da işlemlerinizi yavaşlatır.
  • SQL Sunucunun garip bir özelliği var. Eğer bilgisayarda yeterince RAM varsa bilgisayardaki tüm veritabanlarını RAM’e atıyor ve işlemlere orada devam ediyor. Sonra da RAM’den hiç silmiyor. Böylece tüm işlemler daha hızlı yapılıyor. Yani alabildiğiniz kadar büyük RAM alın.
  • Kullanıcıların bilgisayarlarından daha hızlıdır. O yüzden sql query’lerin ağır kısmını sunucunuza yaptırın. Stored Procedure kullanın. Karışık, çok tablolu query yerine view kullanın.
  • Veritabanlarınızda indekslemelere dikkat edin. Böylece sık yapılan arama ve sıralama işlemleri daha da hızlanır.
  • Sunucunuzda en çok işlem zamanını harcayan query’leri mutlaka bir göz atın. Ya onları minimize edin veya stored procedure yapın veya projenizde cache kullanın.
  • Veritabanlarındaki eksik ve gedikleri bulan kodlar var sp_Blitz gibi.
  • Asla BLOB saklamayın. Adı üstünde hiç hoş olmayan bir şey ve veritabanına ağırlıktan başka bir şey getirmiyor.
  • Veritabanı collation ayarlarını düzgün ayarlayın.

Bir de önem arz eden, unutulmaması gereken ayarlar

  • Veritabanlarınızı sakın windows ile aynı sürücüde bulundurmayın (Genellikle C sürücü olur bu). Eğer o sürücüye format atmaya kalkan biri olursa tüm verileriniz gider.
  • Sistem veritabanlarını da farklı sürücüye koyun.
  • Sunucunuza bağlanma yetkisine sahip olan insanların listesi varsa hemen şifreyi değiştirin. Nerede çokluk ile başlayan çok veciz bir söz var, hatırlatırım.
  • Mutlaka ama mutlaka bir yedekleme planı oluşturun. Her gün yada en azından her hafta bir yedekleme oluşturun. Bu yedekler de bambaşka bir sürücüde bulunsun.
  • Yedeklemede sıkıştırma işlemini aktifleştirin.
  • İmkanınız varsa bu yedekleri ayrıca farklı bir şehirde veya en azından farklı bir binadaki sunucuya yedekleyin. Allah korusun, yangın, deprem gibi afetlerden sonra keşke dememek için şimdiden bir şeyler yapın.
  • Mutlaka bir maintenance plan oluşturun. Otomatik yedekleme ve indekslemeyi ayarlayın.
  • SQL Agent Job’lardaki hata emaillarini aktif edin.
  • DBCC CheckDB ile veritabanlarını haftalık kontrol edin.
  • En önemlisi işe bismillah ile başlayıp, sürekli dua ile devam etmelisiniz.