- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库SQL Server2000 迁移至 SQL Server2005 查询性能优化总结
数据库SQL Server2000 迁移至 SQL Server2005 查询性能优化总结
测试数据库:***数据库
数据库版本:SQL Server 2005 sp2
迁移方式:分离/附加,备份/还原。
问题简述:数据库迁移后,其中2/5存储过程执行时间超时。
优化工具:
1.1、数据库引擎优化顾问
使用SQL2005自带的“数据库引擎优化顾问”,会根据存储过程中所用到的表自动建立对应索引,并生成统计信息。用此方法90%的存储过程可以达到SQL2000中的执行速度,甚至更快。但小部分存储过程仍无法到达满意效果。使用到临时表的存储过程此工具无法全部应用。
1.2、SQLServer2005_PerformanceDashboard
此工具是微软提供的一个数据库性能监视的报表工具。需要安装在SQLServer2005sp2下,该工具功能:
CPU瓶颈(什么查询最占CPU)
IO瓶颈 (什么查询执行最多的IO)
查询优化器产生的索引(缺失索引)
锁
使用 数据库引擎优化顾问 优化了华理数据库中2000个存储过程,其中200个存储过程因为以下几种原因不能使用“优化顾问”优化。
※ 不能优化的原因分以下几点:
1:表名无效,找不到表。
2:对使用临时表的存储过程无法优化。
(优化过程中发现,有的存储过程如[tb_sp_GetEntryStudentList]。这个存储过程中也使用了临时表,但是这个PROC中是先CREATE了临时表,再INTO到这个临时表中,这个PROC使用“优化顾问”优化成功了。另外不能优化的PROC都是没有CREATE 直接INTO到临时表。但是这个过程在SQL05中优化过去了,连到SQL2000的数据库优化时依然报告“临时表无效”的错误信息)
3:(UPDATE失败/ INSERT失败/ DELETE失败)因为下列SET 选项的设置不正确:QUOTED_IDENTIFIER。请确保 SET 选项可正确用于计算列和/或查询通知和/或 xml 数据类型方法的索引视图和/或索引。
大部分为临时表不能优化。
优化方案
⑴:手工优化:
测试存储过程:tb_sp_GetDistributeResult
测试条件: 6,-1,-1,-1,-1,-1,,,,-1
SQL2005
首 次 执 行: ‘01:14’ 1521行
第 2 次执行: ‘01:11’
SQL2000
首 次 执 行: ‘00:05’ 1521行
第 2 次执行: ‘00:01’
跟踪SQL2000与SQL2005中这条存储过程的实际执行计划做比较:
在这个存储过程中,2个版本同样是生成了6个步骤的执行计划来完成这个过程。
查询计划对比表:
版 本 查询1 查询2 查询3 查询4 查询5 查询6 2000 27% 13% 12% 40% 3% 5% 2005 38% 18% 17% 15% 6% 6%
SQL Server Profiler跟踪SQL2005下这个存储过程:
整个存储过程95%的时间1分多钟都用在了选中的这条语句上,这条语句就是执行计划中
查询4:
select five.*,one.ThesisBatchID,two.ThesisBatchCode,one.ThesisTopicID,one.TutorTeacherID,one.AnnotateTeacherID,one.TutorTeacherName,one.AnnotateTeacherName,
case one.ThesisDistributeType when 0 then 自动 when 1 then 手工 else end as ThesisDistributeTypeName,
case one.TeacherDistributeType when 0 then 自动 when 1 then 手工 else end as TeacherDistributeTypeName,
case one.WishType when 1 then 第一志愿 when 2 then 第二志愿 when 3 then 第三志愿 when 4 then 随机分配 end as WishType
,one.IfPublic,three.ThesisTopicName,three.ThesisTopicReference,six.ThesisWriteApplySubmitTime
into #TempResult
from #Teacher one
join tb_e_ThesisTopics three on one.ThesisTopicID=three.Thes
您可能关注的文档
- 国际结算中的融资.doc
- JTable合并单元格.doc
- ASUS F9 重建隐藏分区.docx
- Allegro报错积累.docx
- 4台以上并机方案(英文).doc
- ORACLE并行技术使用.doc
- SMT知识简述.doc
- OpenMP应用基础.doc
- redHadLinux下安装oracle11g的步骤.docx
- mis管理实践论文范文.doc
- 幼儿园全民国家安全教育日PPT.ppt
- 文明礼仪伴我行主题班会课.ppt
- 4.2 《心有一团火,温暖众人心》课件(共26张PPT) 2024-2025学年统编版高中语文必修上册.pptx
- 大模型平民化开启“AI+医疗”新纪元.pptx
- 2《以工匠精神雕琢时代品质》 课件(共28张PPT)2024-2025学年统编版高中语文必修上册.pptx
- 3《鸿门宴》 课件 (共52张PPT)2024-2025学年统编版高中语文必修下册.pptx
- unit 2能力阅读写作拔高练-学九级英语全一册单元模块满分必刷题人教版.pdf
- 9.3 《声声慢(寻寻觅觅)》课件 (共25张PPT)2024-2025学年统编版高中语文必修上册.ppt
- “4·23世界读书日”主题教育班会-阅读启心智,知识筑梦想 课件(共27张PPT).pptx
- 4EAT 变速箱维修手册.pdf
文档评论(0)