数据库优化不能不知道的工具:Database Engine Tuning Advisor【原创】
2008-12-15 11:59
549 查看
虽然每天都在写程序,做优化,但实在是太忙了,没有多少时间将经验和教训写下来,也不擅长写教程。但是,让我兴奋的Database Engine Tuning Advisor(后面简称 DTA),我不能不向大家推荐。做网站或业务系统的时候,可能会遇到类似下面的问题:
1)数据库服务器cpu经常涨到80%以上,甚至90%以上;
2)数据库做了索引,但是不能保证必要的索引都做了,更不能保证索引全局最优(涉及多个表、多个存储过程);
3)对索引有一定了解,但不精通,不知道如何深入优化。
如果遇到类似问题,请继续往下看。
数据库性能问题,大多时候,是索引问题!索引有多重要,这里不再深入讨论和分析,下面提供一个解决方案给大家参考。
解决方案及步骤:
1)运行SQL Server Profiler,选择“Tuning” 跟踪模板,并将结果保存到文件(运行10分钟左右即可,时间太长,日志太大,后面分析时间会很长);
2)运行DTA,将刚才保存的跟踪文件作为“工作负荷”文件,设置参数“用于工作负荷分析的数据库”和“选择要优化的数据库和表”,其它参数可默认,点“开始分析”即可;
3)分析结束(时间与数据库大小和跟踪日志大小有关,几分钟到几个小时不等),分析报告中会提供优化的建议和执行优化的SQL代码,根据自身需求,执行相关SQL优化代码即可。
写得比较简略,希望对你有帮助,祝你好运!
应用实例:
雅皮士网站(http://www.yupsky.com/)由于业务、数据量和访问量不断增加,数据库服务器cpu占有率不断上升,最近一度超过90%,使用Database Engine Tuning Advisor 和 SQL Server Profiler进行优化后,cpu回落到10%左右,性能得到了极大的提高。
1)数据库服务器cpu经常涨到80%以上,甚至90%以上;
2)数据库做了索引,但是不能保证必要的索引都做了,更不能保证索引全局最优(涉及多个表、多个存储过程);
3)对索引有一定了解,但不精通,不知道如何深入优化。
如果遇到类似问题,请继续往下看。
数据库性能问题,大多时候,是索引问题!索引有多重要,这里不再深入讨论和分析,下面提供一个解决方案给大家参考。
解决方案及步骤:
1)运行SQL Server Profiler,选择“Tuning” 跟踪模板,并将结果保存到文件(运行10分钟左右即可,时间太长,日志太大,后面分析时间会很长);
2)运行DTA,将刚才保存的跟踪文件作为“工作负荷”文件,设置参数“用于工作负荷分析的数据库”和“选择要优化的数据库和表”,其它参数可默认,点“开始分析”即可;
3)分析结束(时间与数据库大小和跟踪日志大小有关,几分钟到几个小时不等),分析报告中会提供优化的建议和执行优化的SQL代码,根据自身需求,执行相关SQL优化代码即可。
写得比较简略,希望对你有帮助,祝你好运!
应用实例:
雅皮士网站(http://www.yupsky.com/)由于业务、数据量和访问量不断增加,数据库服务器cpu占有率不断上升,最近一度超过90%,使用Database Engine Tuning Advisor 和 SQL Server Profiler进行优化后,cpu回落到10%左右,性能得到了极大的提高。
相关文章推荐
- 运用工具优化数据库设计(Database Engine Tuning Advisor)
- 运用工具优化数据库设计(Database Engine Tuning Advisor)
- 运用工具优化数据库设计(Database Engine Tuning Advisor)
- Database Engine Tuning Advisor 使用工具优化数据库性能
- Sql性能检测工具:Sql server profiler和优化工具:Database Engine Tuning Advisor
- Database Engine Tuning Advisor数据库引擎优化顾问--zt
- Sql性能检测工具:Sql server profiler和优化工具:Database Engine Tuning Advisor
- 利用Database Engine Tuning Advisor改善数据库性能
- 使用 Profiler 和 Database Engine Tuning Advisor 对Sql server 进行优化
- SAP HANA 数据库性能优化(SAP HANA DataBase Performance Tuning)
- Microsoft JET database Engine (0X80040E09) 不能更新,数据库或对象为只读
- 解决(Microsoft JET Database Engine (0x80040E09)/不能更新。数据库或对象为只读。
- 为什么运行时总是提示“Microsoft JET database Engine (0X80040E09)”不能更新,数据库或对象为只读?在线等...
- ASP错误类型:Microsoft JET Database Engine (0x80040E09) 不能更新。数据库或对象为只读。
- Oracle 10G强大的SQL优化工具:SQL Tuning Advisor
- Microsoft JET Database Engine (0x80040E09) 不能更新。数据库或对象为只读。
- 解决Microsoft JET Database Engine (0x80040E09) 不能更新,数据库或对象为只读
- “Microsoft JET Database Engine 错 误 '80040e09' 不能更新。数据库或对象为只读”的解决办法(转)
- ASP错误类型:Microsoft JET Database Engine (0x80040E09) 不能更新。数据库或对象为只读。
- Microsoft JET Database Engine (0x80040E09) 不能更新,数据库或对象为只读