SQL Server 内存压力解决方案
外部压力:
表现形式:
1、total server memory ↓
2、avilable Mbyte 平衡
3、working set ↓
如果说SQL server的内存压库来自于外部、我们是去满足SQL server 的内存使用还是去满足外部的内存使用。
如果想SQL server省着点用的话、可以设置它的 max server memory来控制。
内部压力:
表现形式:
1、total server memory 与 targert server memory 一直保持在一个较高的水平两个值基本相等
2、lazy writes/sec 经常不为零
3、page life expectancy 显著下降
4、page reads/sec 经常不为零
5、stolen page 维持在一个比较高的水平
解决办法:
1、最直接的方式加内存,32位机可以开AWE;
2、看是不是可以做到、一台服务器只跑一个数据库;
3、看看运行的SQL 语句是不是天生就要读这么多的数据、如果不是就对它进行改进
改进方案:
A、减少数据读取量、比方说:需要一行就不要去写一条返回整个表的语句。
B、加索引
C、重建索引或表