SQL Server 数据库优化方法 (一)
我经常碰到有人会问一些数据库优化方面的问题,我觉得这是一最基本技能要求,特别是使用sql server 2005,对于sql server的优化,使用的专职dba或兼职dba们工作更轻松,效率更高了,但是还是有很多新人可能不大了解,我在这儿写一下最基本的一些介绍。
一、首先介绍一下sql server 2005中优化数据时使用到的两个工具
1.第一个工具sql server profile,这个工具在sql server 2000中也有,公司在使用sql 2000数据库时,我经常使用这个工具,来捕捉那些有性能问题的sql语句。
sql server profiler 是用于服务器捕获sql server 2005事件的工具。事件可以保存在一个跟踪文件中,可在以后对该文件进行分析,也可以在试图诊断某个问题时,用它来重播某一系列的步骤。
sql server profiler 可用于以下活动:
1)逐步分析有问题的查询以找到出现问题的原因。
2)查找并诊断运行慢的查询
3)捕获导致某个问题的一系列T-SQL语句,然后用所保存的跟踪在某台测试服务器上复制此问题,接着在测试服务器上诊断问题。
4)监视SQL SERVER的性能以优化工作负荷
5)使性能计数器与诊断问题关联
使用 SQL Server Profiler时,您可以按“持续时间”、CPU、“读”或“写”数据列将跟踪或跟踪文件分组来排除数据故障。例如,您可以对性能差的查询或逻辑读取操作数特别高的查询进行数据故障排除。
通过将跟踪保存至表和使用 Transact-SQL 查询事件数据,可以找到其他信息。
工具界面如图:
2. 第二个工具是sql server 2005中新增加的工具——数据库引擎优化顾问
数据库引擎优化顾问用于分析在一个或多个数据库中运行的工作负荷的性能效果。分析数据库的工作负荷效果后,数据库引擎优化顾问会提供在 Microsoft SQL Server 数据库中添加、删除或修改物理设计结构的建议。这些物理性能结构包括聚集索引、非聚集索引、索引视图和分区。实现这些结构之后,数据库引擎优化顾问使查询处理器能够用最短的时间执行工作负荷任务。
数据库管理员可以使用数据库引擎优化顾问进行探索性分析。探索性分析需要综合使用手动优化和工具辅助优化。若要使用数据库引擎优化顾问进行探索性分析,需使用用户指定的配置功能。使用用户指定的配置功能可以指定优化现有和假设的物理设计结构(如索引、索引视图和分区)的配置。指定假设结构的好处就是,
相关文档:
如何把Access转成SQL Server的方法介绍
很多朋友想用SQL 2000数据库的编程方法,但是却又苦于自己是学Access的,对SQL只是一点点的了解而已,这里我给大家提供以下参考---将Access转化成SQL 2000的方法和注意事项。首先,我说的是在Access 2000,SQL 2000之间转换,其他的我也还没有尝试过,希 ......
(1)关于存储过程返回值问题(output,ruturn)
output存储过程:
alter proc usp_update
@count int output
as
set @count=(select count(*) from stu)
return存储过程:
alter proc usp_update
as
declare @count int
set @count=(select count(*) from stu)
r ......
十一、以上函数的部分实例
1:replace 函数
第一个参数你的字符串,第二个参数你想替换的部分,第三个参数你要替换成什么
select replace('lihan','a','b')
& ......
SQL语句导入导出大全
/******* 导出到excel
EXEC master..xp_cmdshell ’bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""’
/*********** 导入Excel
SELECT *
from OpenDataSource( ’Microsoft.Jet.OLEDB.4.0’,
’Data Source="c:\test.xls ......
一、使用参数化输入。存储过程里尽量避免语句拼接。
二、对于一些数据库,必须设置权限,甚至设置到字段。
三、始终通过测试类型、长度、格式和范围来验证用户输入。
四、过滤敏感字符。
Function ReplaceStr(Str)
Str=Trim(Str)
Str=Replace(Str,"'","'")
Str=Replace(Str,";",";")
Str=Rep ......