[翻译]SQL Server 工作集消息
Q:我发现有指向工作集(SQL Server保留内存区域)被分页出来相关的消息:
重要部分的 SQL 服务器进程内存已被分页。这可能导致性能下降。持续时间: 0 秒。 工作集 (KB): 2484,已提交 (KB): 48036,内存使用比率: 50%。
有什么原因可能导致这个问题?
A:
工作集调整分为以下几种:
1. 信号调整
低物理内存事件提醒事件是由操作系统设置的(参考:QueryMemoryResourceNotification<http://msdn2.microsoft.com/en-us/library/aa366799.aspx>),当物理内存低下时会出现。SQL Server资源监视器,Lazy writer和其他进程占用BPool内存部分。它会将物理内存返回给系统,然后降低SQL Server的工作集。当该事件产生时,sys.dm_os_ring_buffer和RING_BUFFER_RESOURCE_MONITOR的记录会被写入日志。这是SQL Server要保留预留内存的正常行为。该行为不会被写入错误日志信息。
2. 自调整
操作系统在新申请一个页的时候遇到了页错误,判断为物理内存不足。例如,如果SQL Server为一个栈,连接服务器或其他应用程序申请页,发现内存不足,会直接调整SQL Server的工作集。
3. 硬调整
当系统内存严重不足的时候,会发生硬调整。该行为会直接把SQL Server所有的工作集和其他进程分页出来。
除了信号调整之外,自调整和硬调整都会写错误日志,导致性能问题。
基本查错步骤:
1. 确认没有其他进程快速吃完了内存。查看方法是监测内存:_Total工作集这个性能计数器。如果您启用了一个快速消耗内存的应用程序,工作集会被快速地调整,但_Total会保持不变。如果_Total快速下降,那么这就说明不是某个应用程序吃光了内存,而是发生了MiEmptyWorkingSet或MmAllocateContigiousMemory发生了,然后操作系统决定进行硬调整。
2. 确认SQL Server进程ID在发生问题的时间段一直存在。如果SQL Server服务有被重启过计数器可能会产生容易误导的数据。
3. 确认您的系统的驱动是最新的。驱动也可能会造成调整。
4. 确认操作系统终端服务的bug不是导致该问题的原因:http://support.microsoft.com/default.aspx?scid=kb;EN-US;905865
5. 抓取完整的性能计数器,和SQL Server的sys.dm_os_ring_buffers。
6. 应用操作系统补丁:http://support.microsoft.com/default.aspx?scid=kb;EN-US;920739
7. 应用操作系统补丁:http://support.microsoft.com/default.aspx?scid=kb;EN-US;931308
8. 应用SQL Server 2005 SP3。
转载于:https://www.cnblogs.com/galaxyyao/archive/2009/05/18/1459611.html
[翻译]SQL Server 工作集消息相关推荐
- [翻译]SQL Server 该做和不该做的
出处:http://www.codeproject.com/cs/database/sqldodont.asp 仅供学习省事用,翻译不准,详细了解请看原文. 假设你第一次主导一个基于SQL Serve ...
- [翻译]SQL Server 未公开的两个存储过程sp_MSforeachtable 和 sp_MSforeachdb
SQL Server 未公开的两个存储过程sp_MSforeachtable 和 sp_MSforeachdb 您是否曾经写过代码来处理数据库中的所有表?处理一个 SQL Server实例中的所有数据 ...
- [翻译]SQL Server 2005 Analysis Services性能指南
介绍 增强查询性能 理解查询构架 会话管理 MDX查询执行 数据查找:维度 数据查找:度量值组 优化维度设计 定义属性关系 有效使用层次 聚合最大化 聚合如何优化查询 存储引擎如何使用聚合 为什么不创 ...
- sql server 跟踪_SQL Server跟踪标志指南; 从-1到840
sql server 跟踪 SQL Server trace flags are configuration handles that can be used to enable or disable ...
- 如何在SQL Server中实现错误处理
错误处理概述 (Error handling overview) Error handling in SQL Server gives us control over the Transact-SQL ...
- CREATE VIEW SQL:通过SQL Server中的视图插入数据
This is the third article in a series of learning the CREATE VIEW SQL statement. So far, I'd say tha ...
- sql活动监视器 死锁_使用system_health扩展事件监视SQL Server死锁
sql活动监视器 死锁 Performance monitoring is a must to do the task for a DBA. You should ensure that the da ...
- sql raiserror_SQL Server PRINT和SQL Server RAISERROR语句
sql raiserror This article explores the SQL Server PRINT statements, and its alternative SQL Server ...
- nocount on_在SQL Server中设置NOCOUNT ON语句的用法和性能优势
nocount on Have you ever noticed SET NOCOUNT ON statement in T-SQL statements or stored procedures i ...
最新文章
- 在baidu上找到自己
- android视频录制(调用系统视频录制)
- c++ 隐式类型转换
- Leaflet中使用Leaflet.Path.Transform插件实现旋转图形
- 生效linux内核,Linux内核
- uos安装方法_国产UOS(统一操作系统),虚拟机安装体验
- 【LeetCode】【HOT】101. 对称二叉树(BFS+队列/递归)
- python服务端编程_python网络编程示例(客户端与服务端)
- JavaScript设计模式与开发实践系列之单例模式
- C++单元测试工具CppUnit使用简介 【转载】
- 面对初学者的CAN总线入门教程(二)_CAN协议基本概念及其规格标准
- 如何举报YouTube视频和评论
- 几种欧姆龙PLC型号的辨识
- android radiobutton下划线,使用RadioGroup做简单的按钮下划线切换效果
- CSAPP拆弹实验/炸弹实验
- Azure NSG Flow Log 引发的自嗨 -- 事件驱动的日志注入
- 【转】MUD教程--巫师入门教程4
- 中国丹参市场经营模式与盈利预测报告(新版)2021-2026年
- opencv 标定 3D项目 四
- autojs-手机端截图取色助手
热门文章
- windows 调用linux .a lib,动态链接库及静态链接库(windows下的.dll .lib和linux下的.so .a)...
- mysql评论表结构设计_文章评论嵌套显示mysql表结构如何设计(形式如网易新闻评论)...
- 消息队列_消息队列:kafka
- Windows+Nginx+Tomcat搭建负载均衡和集群环境同时实现session共享(一)
- 硬件结构图_那曲地表水电子除垢仪结构图
- 公用计算机管理,如何管理公用计算机和私人计算机的文件访问
- python 方法的实例_python调用自定义函数的实例操作
- Linux crypto相关知识的汇总 Linux加密框架crypto对称算法和哈希算法加密模式
- C++primer 第 3 章 字符串、向量和数组 3 . 4 迭代器介绍
- Linux学习笔记(六)