解决性能问题的关键是确定瓶颈在哪里,最容易造成瓶颈的顺序是:
磁盘I/O > cpu > RAM > 用户连接数 > 网络带宽
所以,你可以按上面的顺序去查看瓶颈可能存在的地方。
对于这么大的数据库,有些地方要注意一下:
2) 定期重建索引(对于这种大数据库,重建索引前把日志模式转到 bulk_logged,完成后再改回 full)
3) 避免收缩数据库 (如果数据库在用户查询繁忙时扩大,就会非常忙,这都可能是你遇到的问题的原因)
如果可能,最好事先扩大数据库,重建索引通常会导致日志文件暴涨(参考第2点)
1) 定期 DBCC CHECKDB
4) 定期重启sql服务,比如每1个月,每2周或1周重启一次(这个很容易被忽略,但非常有效)
另外还有一点比较容易被忽略,
如果你的系统是事务处理和报表查询混合在一起的,即
同时有很多用户更新数据,也有用户运行一些复杂的报表。
那么,建议把你sql Server的最大查询并行度改为1,默认为0,
当有个用户运行一个很复杂的查询时,sql Server 会把4个处理器都用去处理这个查询,其他用户就慢得多了。
如果并行度改为1,sql Server 总是用1个处理器去处理一个查询。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。