Kemungkinan besar disebabkan oleh permintaan yang ingin membaca lebih banyak halaman ke dalam buffer pool, dan buffer pool mengambil lebih banyak memori untuk mengakomodasi hal itu. Beginilah seharusnya SQL Server bekerja. Jika kotak mengalami tekanan memori, ia akan meminta SQL Server untuk memberikan sebagian memori, yang akan dilakukan. Pelanggan tidak perlu khawatir.
Anda dapat menggunakan DMV sys.dm_os_buffer_descriptorsuntuk melihat berapa banyak memori buffer pool yang digunakan oleh database mana. Cuplikan ini akan memberi tahu Anda berapa banyak halaman yang bersih dan kotor (dimodifikasi sejak pos pemeriksaan terakhir atau dibaca dari disk) dari setiap basis data di kumpulan buffer. Anda dapat memodifikasi lebih lanjut.
SELECT
(CASE WHEN ([is_modified] = 1) THEN 'Dirty' ELSE 'Clean' END) AS 'Page State',
(CASE WHEN ([database_id] = 32767) THEN 'Resource Database' ELSE DB_NAME (database_id) END) AS 'Database Name',
COUNT (*) AS 'Page Count'
FROM sys.dm_os_buffer_descriptors
GROUP BY [database_id], [is_modified]
ORDER BY [database_id], [is_modified];
GO
Saya jelaskan ini sedikit lebih banyak di posting blog ini Inside the Storage Engine: Apa yang ada di buffer pool?
Anda juga dapat checkout KB 907877 ( Cara menggunakan perintah DBCC MEMORYSTATUS untuk memantau penggunaan memori pada SQL Server 2005 ) yang akan memberi Anda gambaran tentang gangguan dari sisa penggunaan memori SQL Server (tetapi tidak per-database).
Semoga ini membantu!