• 2 Aralık 2021 15:13

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
2 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 🙂

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.