Menü Kapat

MS SQL Server’da Default RAM Kullanım Kapasitesini Değiştirme ve Optimizasyon

Microsoft SQL Server, performans açısından yüksek bellek tüketimi gerektiren bir veritabanı yönetim sistemidir. Varsayılan olarak, SQL Server kullanılabilir tüm RAM’i kullanma eğilimindedir ve bu, sistemde çalışan diğer uygulamaların performansını olumsuz etkileyebilir. Bu nedenle, RAM kullanım kapasitesinin sınırlandırılması ve optimize edilmesi, hem SQL Server’ın hem de işletim sisteminin dengeli çalışmasını sağlamak için önemli bir adımdır.

Bu yazıda, SQL Server’ın varsayılan RAM kullanım kapasitesini nasıl değiştireceğimizi, neden değiştirmemiz gerektiğini ve toplam RAM’in ne kadarını SQL Server’a ayırmanın en iyi yöntem olduğunu detaylı bir şekilde ele alacağız.

MS SQL Server Varsayılan RAM Kullanımı

Microsoft SQL Server, varsayılan ayarlarla kurulduğunda RAM kullanımını belirli bir sınır olmadan çalıştırır. Bu, SQL Server’ın sistemde kullanılabilir tüm belleği (RAM’i) tüketebileceği anlamına gelir.

RAM Kullanımıyla İlgili Varsayılan Davranışlar

  • SQL Server, veritabanı işlemlerini hızlandırmak için olabildiğince fazla RAM kullanır.
  • İşletim sisteminin veya diğer uygulamaların ihtiyaç duyduğu RAM miktarını dikkate almaz.
  • Eğer sistemde RAM sıkıntısı yaşanırsa, işletim sistemi disk belleği (paging) kullanarak performans düşüşüne neden olabilir.

Bu varsayılan davranış, özellikle aynı makinede birden fazla uygulama çalışıyorsa ciddi sorunlara yol açabilir. Bu yüzden SQL Server’ın maksimum ve minimum RAM sınırlarının belirlenmesi gerekir.

sql ram

SQL Server İçin RAM Kullanım Sınırı Neden Değiştirilmelidir?

1️⃣ İşletim Sistemi Performansını Korumak

SQL Server tüm RAM’i tükettiğinde, işletim sistemi ve diğer uygulamalar bellek kıtlığı yaşayabilir. Bu, Windows Server veya diğer işletim sistemlerinde disk belleği (paging file) kullanımını artırarak ciddi performans kayıplarına yol açabilir.

2️⃣ Diğer Kritik Uygulamaların Sorunsuz Çalışmasını Sağlamak

Eğer aynı sunucu üzerinde IIS, Web API’leri, diğer veritabanı servisleri veya sanal makineler çalışıyorsa, SQL Server’ın tüm belleği tüketmesi diğer kritik süreçleri olumsuz etkileyebilir.

3️⃣ SQL Server Performansını Optimize Etmek

Eğer SQL Server için bellek sınırı belirlenmezse, çöp toplama (garbage collection) veya bellek yönetimi süreçleri verimsiz çalışabilir. Bu da CPU kullanımını artırabilir ve SQL Server’ın yanıt süresini uzatabilir.

4️⃣ Bellek Sızıntıları ve Yanlış Konfigürasyonların Önüne Geçmek

Bazı SQL Server sürümlerinde, özellikle büyük veri setleriyle çalışıldığında, bellek sızıntıları (memory leak) meydana gelebilir. RAM sınırını belirlemek, bu tür bellek yönetimi problemlerinin önüne geçebilir.

SQL Server İçin Optimum RAM Kullanımı Nasıl Belirlenmeli?

SQL Server’ın toplam RAM’in ne kadarını kullanması gerektiğini belirlemek, sistemde çalışan diğer uygulamaların ihtiyacına ve sunucunun toplam RAM kapasitesine bağlıdır.

Genel RAM Kullanım Önerileri

16 GB RAM veya daha az: SQL Server için maksimum RAM = Toplam RAM’in %50-60’ı
32 GB RAM: SQL Server için maksimum RAM = Toplam RAM’in %65-75’i
64 GB RAM ve üstü: SQL Server için maksimum RAM = Toplam RAM’in %75-85’i

📌 Önemli Not: İşletim sisteminin ve diğer uygulamaların sağlıklı çalışabilmesi için her zaman en az 4 GB RAM işletim sistemine ayrılmalıdır.

SQL Server’da RAM Kullanımını Değiştirme Adımları

SQL Server’da RAM sınırlarını belirlemek için aşağıdaki adımları takip edebilirsin:

1️⃣ SQL Server Management Studio (SSMS) Kullanarak RAM Sınırını Değiştirme

  1. SQL Server Management Studio’yu (SSMS) aç.
  2. Bağlantı sağladıktan sonra “SQL Server Instance” adına sağ tıkla ve “Properties” seçeneğine gir.
  3. “Memory” sekmesini aç.
  4. “Maximum Server Memory (MB)” değerini değiştir (Örneğin: 32 GB RAM’lik bir sistemde, bu değeri 24 GB olarak belirleyebilirsin).
  5. “OK” butonuna basarak değişiklikleri kaydet.

T-SQL Komutlarıyla RAM Kullanımını Değiştirme

Eğer SSMS arayüzünü kullanmak yerine T-SQL komutlarıyla ayar yapmak istiyorsan, aşağıdaki komutları kullanabilirsin:

-- SQL Server için maksimum RAM sınırını 24 GB olarak ayarlama
EXEC sys.sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sys.sp_configure 'max server memory (MB)', 24576;
RECONFIGURE;

Önemli:

  • Buradaki 24576 MB = 24 GB RAM anlamına gelir.
  • Sunucunun toplam RAM’ine uygun bir değer seçtiğinden emin ol.
  • Minimum RAM ayarı yapmak için şu komutu kullanabilirsin:
-- SQL Server için minimum RAM sınırını 8 GB olarak belirleme
EXEC sys.sp_configure 'min server memory (MB)', 8192;
RECONFIGURE;

Bu ayarlar SQL Server’ın bellek yönetimini optimize eder ve diğer kritik uygulamaların bellek tüketimini engeller.

Sonuç ve Öneriler

🔹 SQL Server, varsayılan olarak tüm RAM’i kullanma eğilimindedir ve bu, diğer uygulamaların performansını olumsuz etkileyebilir.
🔹 İşletim sistemi ve kritik süreçlerin sağlıklı çalışması için SQL Server’a ayrılacak RAM sınırı belirlenmelidir.
🔹 Genel olarak, toplam RAM’in %50-85’i SQL Server’a ayrılmalı, kalan kısmı işletim sistemi ve diğer uygulamalara bırakılmalıdır.
🔹 SQL Server Management Studio veya T-SQL komutlarıyla RAM sınırları manuel olarak ayarlanabilir.

Doğru RAM yönetimi sayesinde SQL Server performansını artırabilir, sistem kararlılığını koruyabilir ve veritabanı işlemlerinin daha hızlı çalışmasını sağlayabilirsin

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir