解决性能问题的关键是确定瓶颈在哪里,最容易造成瓶颈的顺序是:
磁盘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个处理器去处理一个查询。
关于sqlserver响应慢的问题
精选 转载下一篇:我的友情链接
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
关于LVGL界面切换的问题
LVGL界面切换问题解决
界面切换 线程安全 键值 -
Docker 镜像管理,解决下载慢的问题
解决docker镜像下载慢、无法下载的问题
Docker Nginx -
通过nginx访问日志来分析响应慢的问题
通过nginx的访问日志来分析客户端慢的问题
nginx日志 nginx分析慢 -
关于LIST.Select().ToList()慢的问题
var sendlist = emailList.Select(email =>
全局变量 局部变量 javascript 解决方法 lambda表达式