当前位置:Gxlcms > 数据库问题 > sqlserver内存设置

sqlserver内存设置

时间:2021-07-01 10:21:17 帮助过:2人阅读

SQL Server会把用过的数据放入cache,以便加速数据的访问。如果没有其它进程竞争,那么SQL Server会使用几乎全部的内存,直到有其它进程需要内存,才会释放内存。  在并发度不大的情况下,不用去设置SQL Server的内存是没什么问题的。但是在高并发度/大数据量的情况,这样可能会导致大量的页交换。推荐的做法是,设置SQL Server使用75%的内存,比如64G内存的服务器,我们一般设置SQL的最大内存为48G,然后观察SQL的Buffer Cache Hit Ratio,如果低于99%,再增加2G内存,直到Buffer Cache Hit Ratio高于99%  查询Buffer Cache Hit Ratio代码 
  Sql代码  SELECT   (CAST(SUM(CASE LTRIM(RTRIM(counter_name))     WHEN ‘Buffer cache hit ratio‘     THEN CAST(cntr_value AS INTEGER) ELSE NULL END) AS FLOAT) /    CAST(SUM(CASE LTRIM(RTRIM(counter_name))     WHEN ‘Buffer cache hit ratio base‘ THEN CAST(cntr_value AS INTEGER)ELSE NULL END) AS FLOAT)) * 100    AS BufferCacheHitRatio    FROM sys.dm_os_performance_counters     WHERE LTRIM(RTRIM([object_name])) LIKE ‘%:Buffer Manager‘ AND     [counter_name] LIKE ‘Buffer Cache Hit Ratio%‘ 

sqlserver内存设置

标签:

人气教程排行