如何使用数据库引擎优化顾问优化数据库 <转>
呵呵,最近俺也经常用这玩意才优化数据,懒得写,copy了这位仁兄的文章.
原文地址:http://www.cnblogs.com/hsj2010/archive/2010/07/15/1777823.html
最近数据库服务器有点慢,去看看哪方面的压力比较大!
其实并不是这个Lucky28 数据库影响整个服务器。
但多少会有点影响,每个小影响积累起来就影响比较大!
这里简单的讲一下:如何使用数据库引擎优化顾问优化数据库
简单的优化一下数据库。
一、启动 microsoft sql server management studio(就是sql的管理工具)
二、工具->sql server profiler
三、sql server profiler->文件->新建跟踪 ->运行
时间长一点,点停止 然后保存这个跟踪
sql server profiler->文件->保存->取个名字。
详细查看:
如何创建跟踪 (SQL Server Profiler)
http://technet.microsoft.com/zh-cn/library/ms175047.aspx
四、sql server profiler->工具-数据库引擎优化顾问
工作负荷 选择刚才保存的文件。
在选择要优化的数据库和表 里面选择一个(不要全选,会卡死的)
选项都是中文的,自己配置一下。
最后点下开始分析。等着,我这个等了十几分钟。
完成后会有建议
看一下建议
tbLucky28Account 这张表查询其实已经很快了,但是他使用频率很高,跟据它的建议优化一下。确实提高了不少。
一个是统计,一个是索引
以下是网上查过来的:
1.STATISTICS是一个表中某几个列的统计信息,如一个表是全校学生某次考试的分数,score列的类型是int,取值范围是0到100的整数, 那么statistc就是每个分数分别有多少人。在一个特定的查询中,使用索引可能加快 速度,也可能减慢速度,所以SQL server要事先对使用索引的效果做一个预测,预测的依据就是STATISTICS。
2.默认情况下,表或索引更改了,统计会相应地自动更新, 以保持统计是最新的。但是可以在数据库选项中关闭这个自动更新的功能,提高数据表的更新速度。但需要定期手动更新统计。因为过期的统计信息会对是否使用索 引的判断带来误判。没发现SQL2000和SQL2005的统计有什么区别。
3.index要依赖正确的STATISTICS才能发挥作用。而你的SQL2005优化工具对缺乏STATISTIC的列自动产生了创建语句。
索引有很多好处和坏外,以下是索引的一点点资料,
http://www.cnblogs.com/Mattcoder/archive/2007/02/08/644824.html
五、查看报告
有很多报告可以查看。
这里可以看到 tbLucky28Account 这个账户表的访问频率,前面的建议优化是非常正确的。
这里有索引的报告。这里我圈出来的两个索引特别大。
最大那个 PK_tbUserWagerTaskHistory 这个是历史数据,备查的,平时不用没什么影响。
但是上面那个PK_tbGamePriceAccountLogs_XX这个有32多M就要跟据自己的实际情况进行优化。
如何使用数据库引擎优化顾问优化数据库
http://technet.microsoft.com/zh-cn/library/ms186354.aspx
如何创建工作负荷
http://technet.microsoft.com/zh-cn/library/ms190957.aspx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?