• 19 Mart 2024 10:38

Sait ORHAN

Öğretmek için Öğrenin- Öğrenmek için Öğretin

SQL Server Memory (RAM) Kullanımı

Bir efsaneye göre SQL Server kurulduğu sunucunun bütün RAM kaynağını tüketiyor ve var ise sunucuda çalışan diğer uygulamaların kilitlenmesine sebep oluyor. Kısmen doğru kısmen yanlış bir efsane bu… Peki nedir bunun aslı?

SQL Server kurulumunda ihmal edilen konulardan biri de SQL Server’ın kullanabileceği maksimum RAM miktarının ayarlanmasıdır. Eğer SQL Server kurulurken max RAM parametresi girilmezse gelen sorguların ihtiyaç duyduğu kadar RAM’i kullanır. Buraya kadar olması gereken ancak SQL Server’in yapısında kullandığı RAM’i sisteme iade söz konusu değildir. Örneğin; yılda bir çalıştırılan ve RAM’in büyük kısmını kullanan bir sorgudan sonra görev yöneticisinden kontrol edilirse sunucunun RAM’inin büyük çoğunluğunu SQL Server’in kullandığı görülür. Burada yapılması gerekenler listesinde ilk akla gelen; sunucuya RAM takviyesi yapmak olsa da aslında SQL Server servisini yeniden başlatmak sunucuyu rahatlatacaktır. Ancak canlı sistemler de bu pek mümkün olmuyor. O zaman ikinci ve asıl olması gereken seçenek devreye giriyor. SQL Server’a kullanabileceği max RAM miktarı ayarı yapmak.

Kurulu SQL Server üzerinde max RAM miktarı aşağıdaki iki adımda yapılabilir.

Aynı işlemi T-SQL ile yapmak istersek de ilgili kod aşağıdaki gibidir.

EXEC sys.sp_configure N'show advanced options', N'1'  RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'max server memory (MB)', N'maxmiktar'
GO
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'show advanced options', N'0'  RECONFIGURE WITH OVERRIDE
GO
4 thoughts on “SQL Server Memory (RAM) Kullanımı”
  1. Sait Hocam bir sorum olacak. Bu verdiğiniz kodu bir jobs a bağlasak belirli aralıklarda SQL değerini örneğin 20 GB’a düşürecek (her gece 12:00 da) ardında 10 DK sonra tekrar 50 GB’a yükseltecek diğer gece 12:00’a kadar 50 GB’da devam edecek böyle birşey yapılabilir mi ?

    1. Teknik olarak yapılabilir. Ancak SQL Server performansını RAM’de oluşturduğu istatistiklerden aldığından çok tavsiye etmiyorum 🙂

  2. Merhaba,
    Ayarı bende bu şekilde yapmıştım fakat hala çok yüksek kullanıyor. % 58 i kullanıyor. Sunucuda 64 gb ram var. Localde çalışan sunucu.

Bir yanıt yazın

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

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.