• 30-01-2025, 06:53:53
    #1
    Localde işlemleri takip ettiğimiz bir erp yazılımımız var. Server bilgisayarımızda sql server 2008 kurulu ve tüm bilgisayarlar buraya bağlı. Çalışırken sorgu yaptığımızda veya yeni bir ekleme çıkartma yaptığımızda aşırı yavaşlık söz konusu. Server özelliklerinden mi oluyor bilemiyorum.
    Bunu nasıl çözebilir veya hızlandırabiliriz?

    Server Özellikleri
    win10
    ram 8gb
    5400rpm hdd takılı
    1000mbps localde bağlantı hızımız var
  • 30-01-2025, 07:09:17
    #2
    Hdd yerine ssd kullanabilirsiniz. Ayrıca eğer sık kullanılan sorgular için uygun indeksler yoksa, SQL Server tabloları tam tarayarak çalışır ve bu da ciddi bir yavaşlığa neden olur.
  • 30-01-2025, 07:16:37
    #3
    sql büyük ölçüde ramde çalışır ram kesin arttırılmalı ama öncesinde sql free sürüm ise (express) kısıtlı donanım kaynaklarına izin verir sql express en fazla 1 gb rame izin veriyor olması lazım bunları bi araştırın derim.
  • 30-01-2025, 07:39:28
    #4
    noertz adlı üyeden alıntı: mesajı görüntüle
    Hdd yerine ssd kullanabilirsiniz. Ayrıca eğer sık kullanılan sorgular için uygun indeksler yoksa, SQL Server tabloları tam tarayarak çalışır ve bu da ciddi bir yavaşlığa neden olur.
    Uygun indexler var ancak çok kapsamlı olduğu için tam taramayıda yapıyor.
    Örnek olarak söyleyim,
    Sorgumuz malzemenin durumuyla ilgili olsun şu şekilde içerden sorgu yapılıyor:
    1-Malzeme depoda mı değil mi?
    2- Depoda ise kaç adet var?
    3- Depoda değil ise hangi operasyonda
    4- Operasyondaysa hangi firmada
    5- Operasyonda son durum ne?
    6- Tahmini teslim ne verilmiş?
    7- Teslim edildiyse ne şartlarda?
    8- Sevke hazır mı değil mi

    gibii...
    Bunların hepsi ayrı tabloda yer alıyor ve bunlar sorgulanıyor. Burada sadece çok özet olarak gösterdim. Arkaplanda tüm firmaların cari bilgileri risk analizleri, ortalama teslim süreleri gibi sorgularda dönüyor. Anlık veri girişleri ve personel kullanımı çoğaldıkça bariz yavaşlama görüyorum zaten. Serverin yetersiz kaldığı ve sıfırdan bir server kurmam gerektiğine inanıyorum fakat bu seferde bir sorun olacak diye aklım çıkıyor çünkü işimi durdurur.

    ismoz adlı üyeden alıntı: mesajı görüntüle
    sql büyük ölçüde ramde çalışır ram kesin arttırılmalı ama öncesinde sql free sürüm ise (express) kısıtlı donanım kaynaklarına izin verir sql express en fazla 1 gb rame izin veriyor olması lazım bunları bi araştırın derim.
    microsoftun sql express serverini kullanıyorum. Ne önerirsiniz?
  • 30-01-2025, 07:59:38
    #5
    Kurumsal PLUS
    Index yapısı yanlışsa/gereksizse bu da yavaşlatır. Sık kullanılan sorguları materalize ederseniz çok fayda sağlar. Ayrıca yeni sunucu kurulumu düşünürseniz sql server 2016 kontrol etmenizi tavsiye ederim, query store da yükünüzü hafifletir.
  • 30-01-2025, 08:06:37
    #6
    Namaeus adlı üyeden alıntı: mesajı görüntüle
    Index yapısı yanlışsa/gereksizse bu da yavaşlatır. Sık kullanılan sorguları materalize ederseniz çok fayda sağlar. Ayrıca yeni sunucu kurulumu düşünürseniz sql server 2016 kontrol etmenizi tavsiye ederim, query store da yükünüzü hafifletir.
    Erp yazılımı birkaç senelik değil biraz eski ve hatasız olarak 2008 de çalışıyor. Güncel sürüm yüklendiğinde problemler çıkartıyor nedenini bilmiyorum bu nedenle güncelleyemiyoruz. Yapıda gözükmemesi gereke hiçbirşey yok hepsinin olması gerekiyor. Ayrıca bu söylediğiniz düşünülerek sekme sekme çalışıyor.
  • 30-01-2025, 09:03:46
    #7
    Sorguların kaynak kullanımını görebilirsiniz; SET STATISTICS IO ON
    Sorgulara with(nolock) eklenmemiş olabilir (faydalı bir parametre)
    Ram kullanımı takip edilebilir performansın yüksek olduğu zamanlarda yavaşlık söz konusu ise arttırılabilir
  • 30-01-2025, 09:12:46
    #8
    HiTLy adlı üyeden alıntı: mesajı görüntüle
    Sorguların kaynak kullanımını görebilirsiniz; SET STATISTICS IO ON
    Sorgulara with(nolock) eklenmemiş olabilir (faydalı bir parametre)
    Ram kullanımı takip edilebilir performansın yüksek olduğu zamanlarda yavaşlık söz konusu ise arttırılabilir
    Ram kullanımı %80 %85 civarında geziyor zaten.
    SET STATISTICS IO ON bunuda inceleyeceğim.
    SELECT * FROM Orders WITH (NOLOCK) WHERE CustomerID = 1; bu şekilde görünüyor sanırım kullanılmış.
  • 30-01-2025, 09:36:24
    #9
    sunucuoptimizasyon.com
    Sorunun ipuçlarını vermişsiniz zaten.

    5400 rpm sata disk ve yüzde 85’lere varan ram kullanımı.

    Sql işlemleri genelde ufak dosya okuma yazma yapar ve yüksek iops gücü gerektirir, aynı zamanda veriye ulaşım süresi de çok önemlidir. 5400 rpm sata diskin ufak dosya okuma hızları oldukça düşüktür, ayrıca çok düşük iops performansı mevcuttur aynı zamanda veriye ulaşım süresi de çok yüksektir. Bu da işlemlerin geç tamamlanmasına ve sistemin daha fazla cpu kullanmasına neden olur. Ayrıca ram kullanımının yüzde 85 üzerine çıkması sistemin takas ram (swap) kullanımına neden olur, bu takas ram alanını da diskten kullanır, zaten hali hazırda büyük yük altında ve darboğazda olan disk bir de takas ram alanı için daha fazla yüke maruz kalır ve sorunlar başlar.

    Sistemi ssd diske taşımanızı öneririm ram miktarında da artış faydalı olur.