• Glen Barry wrote a good set of scripts that you might find use in.

    Here's the link[/url]

    the below script tells you well... what his comments say. Buffer Usage by database. If you're running under powered already, the virtuals will still want more ram I'm sure. This number is a current window in time, not a history. Take it at face value.

    -- Get total buffer usage by database for current instance (Query 22) (Total Buffer Usage by Database)

    -- This make take some time to run on a busy instance

    SELECT DB_NAME(database_id) AS [Database Name],

    CAST(COUNT(*) * 8/1024.0 AS DECIMAL (10,2)) AS [Cached Size (MB)]

    FROM sys.dm_os_buffer_descriptors WITH (NOLOCK)

    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);

    To note, I wouldn't use this as an exact value. This is just more of a helpful hint as an idea of how much each database is using in cache.

    .