sql-server – 什么会导致错误的SQL服务器性能?
发布时间:2020-12-12 06:21:59 所属栏目:MsSql教程 来源:网络整理
导读:每次我发现从我的数据库中检索数据的性能都很慢.我试图找出我的SQL查询的哪个部分有问题,我尝试优化它,并向表中添加一些索引.但这并不能解决问题. 我的问题是: 还有其他技巧可以提高SQL服务器的性能吗? 导致SQL Server性能恶化的另一个原因是什么? 解决方
每次我发现从我的数据库中检索数据的性能都很慢.我试图找出我的SQL查询的哪个部分有问题,我尝试优化它,并向表中添加一些索引.但这并不能解决问题.
我的问题是: 还有其他技巧可以提高SQL服务器的性能吗? 导致SQL Server性能恶化的另一个原因是什么? 解决方法>低效的查询设计>自动增长文件 >要在表上维护太多索引 >表上的索引太少 >未正确选择聚集索引 >由于维护不善导致索引碎片化 >由于没有聚簇索引而导致堆碎片 >索引上使用的FILLFACTOR太高,导致页面分割过多 >索引上使用的FILLFACTOR太低,导致空间占用过多,扫描时间增加 >在适当的情况下不使用覆盖索引 >使用非选择性索引 >统计数据维护不当(过时统计数据) >数据库未正常规范化 >事务日志和数据共享相同的驱动器主轴 >错误的内存配置 >内存太少 > CPU太少了 >慢速硬盘 >故障硬盘或其他硬件 >数据库服务器上的3D屏幕保护程序会占用您的CPU >与竞争CPU和内存的其他进程共享数据库服务器 >锁定查询之间的争用 >查询扫描整个大表 >以无效方式搜索数据的前端代码(嵌套循环,逐行) >不必要和/或不是FAST_FORWARD的游标 >当您有大型表被镜像时,不设置NOCOUNT. >使用过高的事务隔离级别(例如在不需要时使用SERIALIZABLE) >客户端和SQL Server之间的往返次数过多(繁琐的界面) >不必要的链接服务器查询 >链接服务器查询,该查询以未定义主键或候选键的远程服务器上的表为目标 >选择太多数据 >过多的查询重新编译 哦,也可能还有其他一些. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |