《MSSQL查询性能大幅下降:加上条件后的慢速查询》
MSSQL是一种相对来说非常受欢迎的关系型数据库。它有许多优势:比如可靠性、拓展性和可维护性。但是,有时候MSSQL查询中加上条件以后可能会遇到性能上的大幅下降,使得查询变得比较慢,这时候需要使用相应的解决办法来进行调整。
第一步,可以对索引进行检查,确保索引设置正确,满足性能要求。索引最好要能够涵盖所有的查询条件,以便在SQL引擎检索到数据的时候能够有效利用到这些索引。可以使用下面的SQL命令来获取MSSQL数据库中的索引列表:
SELECT [name]FROM sys.indexesWHERE [object_id] = OBJECT_ID('[TableName]');
接下来,在调整查询条件的时候也可以考虑使用通配符来提供查询。例如,对于有大量数据的表,可以使用“%”或“_”来查找能够满足特定条件的大小写不敏感的字符串和数字,其中“_”匹配单个字符,“%”匹配多个字符,这样可以有效地减少被检索的数据量,而不会对结果的精确性产生影响。
如果在相同的数据库中,可能会产生同样的SQL语句,此时可以考虑使用缓存来减轻MSSQL查询压力,提高查询性能。可以使用下面的代码来查看缓存是否在工作:

SELECT [text], [cacheobjtype], [size_in_bytes], [usecounts], [objtype] FROM sys.dm_exec_cached_PLANsWHERE [objtype] = 'Adhoc' ORDER BY [usecounts] DESC;
此外,也可以考虑对MSSQL数据库的结构进行调整,例如删除重复或者不必要的列,以及转换数据格式等,以便提升查询速度。
提升MSSQL查询性能的办法有很多,但最重要的是要正确使用索引,合理使用条件查询,优化SQL语句,以此提高执行效率。
香港服务器首选树叶云,2H2G首月10元开通。树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云 服务器 和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
SQL server 2000 和 2005有什么区别?
数据库管理10个最重要的特点特点 描述数据库镜像通过新数据库镜像方法,将记录档案传送性能进行延伸。 您将可以使用数据库镜像,通过将自动失效转移建立到一个待用服务器上,增强您SQL服务器系统的可用性。 在线恢复使用SQL2005版服务器,数据库管理人员将可以在SQL服务器运行的情况下,执行恢复操作。 在线恢复改进了SQL服务器的可用性,因为只有正在被恢复的数据是无法使用的,而数据库的其他部分依然在线、可供使用。 在线检索操作在线检索选项可以在指数数据定义语言(DDL)执行期间,允许对基底表格、或集簇索引数据和任何有关的检索,进行同步修正。 例如,当一个集簇索引正在重建的时候,您可以对基底数据继续进行更新、并且对数据进行查询。 快速恢复新的、速度更快的恢复选项可以改进SQL服务器数据库的可用性。 管理人员将能够在事务日志向前滚动之后,重新连接到正在恢复的数据库。 安全性能的提高SQL Server 2005包括了一些在安全性能上的改进,例如数据库加密、设置安全默认值、增强密码政策、缜密的许可控制、以及一个增强型的安全模式。 新的SQL Server Management StudioSQL Server 2005引入了SQL Server Management Studio,这是一个新型的统一的管理工具组。 这个工具组将包括一些新的功能,以开发、配置SQL Server数据库,发现并修理其中的故障,同时这个工具组还对从前的功能进行了一些改进。 专门的管理员连接SQL Server 2005将引进一个专门的管理员连接,即使在一个服务器被锁住,或者因为其他原因不能使用的时候,管理员可以通过这个连接,接通这个正在运行的服务器。 这一功能将能让管理员,通过操作诊断功能、或Transact—SQL指令,找到并解决发现的问题。 快照隔离我们将在数据库层面上提供一个新的快照隔离(SI)标准。 通过快照隔离,使用者将能够使用与传统一致的视野观看数据库,存取最后执行的一行数据。 这一功能将为服务器提供更大的可升级性。 数据分割数据分割 将加强本地表检索分割,这使得大型表和索引可以得到高效的管理。 增强复制功能对于分布式数据库而言,SQL Server 2005提供了全面的方案修改(DDL)复制、下一代监控性能、从甲骨文(Oracle)到SQL Server的内置复制功能、对多个超文本传输协议(http)进行合并复制,以及就合并复制的可升级性和运行,进行了重大的改良。 另外,新的对等交易式复制性能,通过使用复制,改进了其对数据向外扩展的支持。 有关开发的10个最重要的特点特点 描述 框架主机使用SQL Server 2005,开发人员通过使用相似的语言,例如微软的Visual C# 和微软的Visual Basic,将能够创立数据库对象。 开发人员还将能够建立两个新的对象——用户定义的类和集合。 XML 技术在使用本地网络和互联网的情况下,在不同应用软件之间散步数据的时候,可扩展标记语言(XML)是一个重要的标准。 SQL Server 2005将会自身支持存储和查询可扩展标记语言文件。 2.0 版本从对SQL类的新的支持,到多活动结果集(MARS),SQL Server 2005中的将推动数据集的存取和操纵,实现更大的可升级性和灵活性。 增强的安全性SQL Server 2005中的新安全模式将用户和对象分开,提供fine-grain access存取、并允许对数据存取进行更大的控制。 另外,所有系统表格将作为视图得到实施,对数据库系统对象进行了更大程度的控制。 Transact-SQL 的增强性能SQL Server 2005为开发可升级的数据库应用软件,提供了新的语言功能。 这些增强的性能包括处理错误、递归查询功能、关系运算符PIVOT, APPLY, ROW_NUMBER和其他数据列排行功能,等等。 SQL 服务中介SQL服务中介将为大型、营业范围内的应用软件,提供一个分布式的、异步应用框架。 通告服务通告服务使得业务可以建立丰富的通知应用软件,向任何设备,提供个人化的和及时的信息,例如股市警报、新闻订阅、包裹递送警报、航空公司票价等。 在SQL Server 2005中,通告服务和其他技术更加紧密地融合在了一起,这些技术包括分析服务、SQL Server Management Studio。 Web服务使用SQL Server 2005,开发人员将能够在数据库层开发Web服务,将SQL Server当作一个超文本传输协议(HTTP)侦听器,并且为网络服务中心应用软件提供一个新型的数据存取功能。 报表服务利用SQL Server 2005, 报表服务可以提供报表控制,可以通过Visual Studio 2005发行。 全文搜索功能的增强SQL SERVER 2005将支持丰富的全文应用软件。 服务器的编目功能将得到增强,对编目的对象提供更大的灵活性。 查询性能和可升级性将大幅得到改进,同时新的管理工具将为有关全文功能的运行,提供更深入的了解。 有关商业智能特征的10个最重要的特点特点 描述分析服务SQL SERVER 2005的分析服务迈入了实时分析的领域。 从对可升级性性能的增强、到与微软Office软件的深度融合,SQL SERVER 2005将帮助您,将商业智能扩展到您业务的每一个层次。 数据传输服务(DTS)DTS数据传输服务是一套绘图工具和可编程的对象,您可以用这些工具和对象,对从截然不同来源而来的数据进行摘录、传输和加载(ETL),同时将其转送到单独或多个目的地。 SQL SERVER 2005将引进一个完整的、数据传输服务的、重新设计方案,这一方案为用户提供了一个全面的摘录、传输和加载平台。 数据挖掘我们将引进四个新的数据挖掘运算法,改进的工具和精灵,它们会使数据挖掘,对于任何规模的企业来说,都变得简单起来。 报表服务在SQL SERVER 2005中,报表服务将为在线分析处理(OLAP)环境提供自我服务、创建最终用户特别报告、增强查询方面的开发水平,并为丰富和便于维护企业汇报环境,就允许升级方面,提供增进的性能。 集群支持通过支持容错技术移转丛集、增强对多重执行个体的支持、以及支持备份和恢复分析服务对象和数据,分析服务改进了其可用性。 主要运行指标主要运行指标(KPIs)为企业提供了新的功能,使其可以定义图表化的、和可定制化的商业衡量标准,以帮助公司制定和跟踪主要的业务基准。 可伸缩性和性能并行分割处理,创建远程关系在线分析处理(ROLAP)或混合在线分析处理(HOLAP)分割,分布式分割单元,持续计算,和预制缓存等特性,极大地提升了SQL Server 2005中分析服务的可伸缩性和性能。 单击单元当在一个数据仓库中创建一个单元时,单元向导将包括一个可以单击单元检测和建议的操作。 预制缓存预制缓存将MOLAP等级查询运行与实时数据分析合并到一起,排除了维护在线分析处理存储的需要。 显而易见,预制缓存将数据的一个更新备份进行同步操作,并对其进行维护,而这些数据是专门为高速查询而组织的、它们将最终用户从超载的相关数据库分离了出来。 与Microsoft Office System集成在报表服务中,由报表服务器提供的报表能够在Microsoft SharePoint门户服务器和Microsoft Office System应用软件的环境中运行,Office System应用软件其中包括Microsoft WORD和Microsoft Excel。 您可以使用SharePoint功能,订阅报表、建立新版本的报表,以及分发报表。 您还能够在Word或Excel软件中打开报表,观看超文本连接标示语言(HTML)版本的报表。
如何了解 MS SQL-Server7.0 性能分析参数
当你怀疑计算机硬件是影响 SQL Server 运行性能的主要原因时,可以通过 SQL Server Performance Monitor 监视相应硬件的负载,以证实你的猜测并找出系统瓶颈。 以下将介绍一些常用的分析对象及其参数。 Memory: Page Faults / sec 参数: 如果该值偶尔走高,表明当时有线程竞争内存。 如果持续很高,则内存可能是瓶颈。 Process: Working Set 参数: SQL Server 的该参数应该非常接近分配给 SQL Server 的内存值。 在 SQL Server 设定中,如果将“set working set size”置为 0,则 Windows NT 会决定 SQL Server 的工作集的大小。 如果将“set working set size”置为 1,则强制工作集大小为 SQL Server 的分配内存大小。 一般情况下最好不要改变“set working set size”的缺省值。 Process:%Processor Time 参数: 如果该参数值持续超过 95%,表明瓶颈是 CPU。 可以考虑增加一个处理器或换一个更快的处理器。 Processor:%Privileged Time 参数: 如果该参数值和“Physical Disk”参数值一直很高,表明 I/O 有问题。 可考虑更换更快的硬盘系统。 另外设置 Tempdb in RAM,减低“max async IO”、“max lazy writer IO”等措施都会降低该值。 Processor:%User Time 参数: 表示耗费 CPU 的数据库操作,如排序、执行 aggregate functions 等。 如果该值很高,可考虑增加索引、尽量使用简单的表联接、水平分割大表格等方法来降低该值。 Physical Queue Length 参数: 该值应不超过磁盘数的 1.5 至 2 倍。 要提高性能,可增加磁盘。 注意:一个 Raid Disk 实际有多个磁盘。 SQLServer:Cache Hit Ratio 参数: 该值越高越好。 如果持续低于 80%,应考虑增加内存。 注意该参数值是从 SQL Server 启动后,就一直累加记数,所以运行经过一段时间后,该值将不能反映系统当前值。
如何在SQL SERVER 2000 用查询分析器设置???
EXEC sp_attach_db @dbname = Npubs, @filename1 = Nc:\Program Files\Microsoft SQL Server\MSSQL\Data\, @filename2 = Nc:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_
发表评论