Saya ingin masukan Anda tentang ini. Saya memiliki sql server 2008r2 Ent. Ed. 64bit dengan 16 core dan RAM 64GB. Ada satu contoh dari SQL server yang ditambal sepenuhnya pada 20111014.
Ram maksimum diatur ke 60000MB. Jumlah ram gratis adalah 0 menurut task manager setelah beberapa hari online.
Jika saya mengubah ram maksimum menjadi di bawah 53GB, maka setelah beberapa hari akan stabil dan memiliki ram gratis.
Ini adalah proses sql yang mengalokasikan ram menurut task manager. Bagaimana saya bisa memahami apa masalahnya sebenarnya? Tak perlu dikatakan bahwa saya sudah melakukan banyak pengujian tetapi belum menyelesaikan ini sesuai dengan keinginan saya. dan ohh kita tidak mendapatkan memori kelaparan khas tertinggal ketika ram yang tersedia turun ke 0 gratis.
Pembaruan 1:
Terinspirasi oleh T / A lain yang terkait dengan RAM di halaman ini /dba//a/7062/2744 . Saya menggunakan keduanya untuk melihat apa RAM digunakan.
SELECT TOP ( 10 )
[type] AS [Memory Clerk Type] ,
SUM(single_pages_kb) AS [SPA Mem, Kb]
FROM sys.dm_os_memory_clerks
GROUP BY [type]
ORDER BY SUM(single_pages_kb) DESC
OPTION ( RECOMPILE ) ;
SELECT DB_NAME(database_id) AS [Database Name] ,
COUNT(*) * 8 / 1024.0 AS [Cached Size (MB)]
FROM sys.dm_os_buffer_descriptors
--WHERE database_id > 4 -- system databases
-- AND database_id <> 32767 -- ResourceDB
GROUP BY DB_NAME(database_id)
ORDER BY [Cached Size (MB)] DESC
OPTION ( RECOMPILE ) ;
Jumlah yang digunakan ditunjukkan oleh ini pertama pilih 7948432 Kb detik satu 44030.57812 MB yang total sekitar 52GB digunakan oleh sql server ... jadi ke mana sisa RAM saya pergi? :-) Task manager tunjukkan sekarang di-cache 363, tersedia 401, gratis 40 dan sqlservr.exe memiliki Memory private set 64 459 656. Max Ram di atur ke 60000MB seperti sebelumnya.