
01 SQL Server 性能调优
DoveFeng
这个作者很懒,什么都没留下…
展开
-
由浅入深理解索引的实现
这篇文章是介绍MySQL数据库中的索引是如何根据需求一步步演变最终成为B+树结构的以及针对B+树索引的查询,插入,删除,更新等操作的处理方法。Oracle和DB2数据库索引的实现基本上也是大同小异的。文章写得很通俗易懂,就转在这了。关于B+树和索引内部结构可以参考:《B 树、B- 树、B+ 树和B* 树》和《深入理解DB2索引(Index)》。00 – 背景知识-转载 2015-11-03 15:54:56 · 682 阅读 · 0 评论 -
SQL索引学习-索引结构
前一阵无意中和同事讨论过一个SQL相关的题(通过一个小问题来学习SQL关联查询),很惭愧一个非常简单的问题由于种种原因居然没有回答正确,数据库知识方面我算不上技术好,谈起SQL知识的学习我得益于2008年进的一家公司,有几个DBA技术相当专业,正好手上有一个项目遇到了一些数据库查询性能问题,就试着想办法优化,于是自己将相法和DBA沟通后,居然得到了他们的赞同,让我信心大增,后来一段时间我又主动找他转载 2015-11-01 18:44:06 · 543 阅读 · 0 评论 -
DBCC CHECKDB 数据库或表修复
MS Sql Server 提供了很多数据库修复的命令,当数据库质疑或是有的无法完成读取时可以尝试这些修复命令。 1. DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。 use master declare @databasename varchar(255转载 2015-11-01 11:47:29 · 12291 阅读 · 1 评论 -
SQL Server 中 Index Allocation Map(IAM)介绍 01
在以前的文章里,我们讨论了数据页,GAM和SGAM,还有PFS页。今天我们一起来讨论下索引分配映射(Index Allocation Map:IAM)页。在SQL Server 2005和以后的版本里,分配单元(allocation units)以下三个类型:IN_ROW_DATA 用于存储堆分区或索引分区,即heap和B-tree。LOB_DATA用于存储大型对象转载 2015-11-22 13:55:47 · 705 阅读 · 0 评论 -
SQLSERVER DBCC命令大全
DBCC DROPCLEANBUFFERS:从缓冲池中删除所有缓存,清除缓冲区在进行测试时,使用这个命令可以从SQLSERVER的数据缓存data cache(buffer)清除所有的测试数据,以保证测试的公正性。需要注意的是这个命令只移走干净的缓存,不移走脏缓存。由于这个原因,在执行这个命令前,应该先执行CheckPoint,将所有脏的缓存写入磁盘,这样在运行DBCC RROPCLE原创 2015-11-23 08:04:59 · 505 阅读 · 0 评论 -
SQL Server 中 Index Allocation Map(IAM)介绍 02
An Index Allocation Map (IAM) page maps the extents in a 4-gigabyte (GB) part of a database file used by an allocation unit. An allocation unit is one of three types(allocation unit 有三种类型,分别是IN_ROW_DA转载 2015-11-23 08:10:11 · 468 阅读 · 0 评论 -
SQL Server :理解Page Free Space (PFS) 页 02
页面自由空间页(Page Free Space (PFS) )。PFS在数据文件里是第2页(页号1,页号从0开始),接在文件头(file header,页号0)后。GAM与SGAM是用来跟踪区分配情况,而PFS页是用来跟踪页分配级别(page level allocation)。当分配页时,数据库引擎使用GAM与SGAM来确定有可用页的区。一旦数据库引擎找到有可用页的区,它使用PFS页转载 2015-11-23 09:28:10 · 877 阅读 · 0 评论 -
Sql Server中的DBCC命令详细介绍
一:DBCC1:什么是DBCC 我不是教学老师,我也说不到没有任何无懈可击的定义,全名:Database Console Commands。顾名思义“数据库控制台命令”,说到“控制台“,我第一反应就是chrome的开发者工具,不知道你的第一反应会是怎样?开发者工具中,只要javascript能认的语法,你都可以在控制台键入。。。同样的道理sqlserver能认的也是一样。 2:DBC转载 2015-11-22 13:33:32 · 3086 阅读 · 0 评论 -
SQL Server :理解GAM和SGAM页 01
SQL Server在8K 的页里存储数据。分区就是物理上连续的8个页。当我们创建一个数据库,数据文件会被逻辑分为页和区,当用户对象创建时,页会分配给它用来存储数据。GAM(Global Allocation Map)和SGAM(Shared Global Allocation Map)页用来跟踪SQL Server里空间分配情况。这里我们会一起讨论下SQL Server的空间分配,还有GAM转载 2015-11-23 09:26:49 · 673 阅读 · 0 评论 -
利用DBCC PAGE查看SQL Server中的表和索引数据
1.DBCC IND跟DBCC PAGE简介1.1.DBCC IND命令DBCC IND ( { 'dbname' | dbid }, { 'objname' | objid }, { nonclustered indid | 1 | 0 | -1 | -2 } [, partition_number] )1.2.DBCC输出字段描述Colum转载 2015-11-23 08:06:32 · 4737 阅读 · 0 评论 -
SQL Server执行计划的理解
要理解执行计划,怎么也得先理解,那各种各样的名词吧。鉴于自己还不是很了解。本文打算作为只写懂的,不懂的懂了才写。 在开头要先说明,第一次看执行计划要注意,SQL Server的执行计划是从右向左看的。 名词解析: 扫描:逐行遍历数据。 先建立一张表,并给大家看看大概是什么样子的。 CREATE TABLE Person( Id int IDENTI转载 2015-10-29 08:41:05 · 403 阅读 · 0 评论 -
看懂SqlServer查询计划
阅读目录开始SQL Server 查找记录的方法SQL Server Join 方式更具体执行过程索引统计信息:查询计划的选择依据优化视图查询推荐阅读-MSDN文章对于SQL Server的优化来说,优化查询可能是很常见的事情。由于数据库的优化,本身也是一个涉及面比较的广的话题, 因此本文只谈优化查询时如何看懂SQL Server查询计划。毕竟我对SQL Server的转载 2015-10-29 09:00:05 · 579 阅读 · 0 评论 -
浅谈SQL Server中统计对于查询的影响
简介 SQL Server查询分析器是基于开销的。通常来讲,查询分析器会根据谓词来确定该如何选择高效的查询路线,比如该选择哪个索引。而每次查询分析器寻找路径时,并不会每一次都去统计索引中包含的行数,值的范围等,而是根据一定条件创建和更新这些信息后保存到数据库中,这也就是所谓的统计信息。 如何查看统计信息 查看SQL Server的统计信息非常简单,使用如下指令:转载 2015-10-26 15:23:05 · 599 阅读 · 0 评论 -
Sql Server 2005 统计信息用途
1, 什么是统计信息 以下是官方的对统计信息的描述: 按照默认设置,如果表中的某列没有索引,则SQL Server会自动为该列创建统计。然后,查询优化器评估该列中数据分布范围的统计信息,以选择一个更为有效的查询处理方案。分辨自动创建的统计很简单,在SQL Server 7.0和SQL Server 2000中,自动创建的统计的前缀为_WA_Sys。 个人感想:转载 2015-10-26 15:24:20 · 763 阅读 · 0 评论 -
SQL分析Profiler生成的TRC文件
通过 Select 查询 过滤trc文件,显示a.CPU,a.Reads,a.Writes,a.Duration,a.TextData等文件内容,代码如下:SELECT top 100 a.CPU,a.Reads,a.Writes,a.Duration,a.TextData,* from fn_trace_gettable('d:\test\20120504.trc', default)原创 2012-05-04 09:17:17 · 4635 阅读 · 0 评论 -
SQL Server 附加数据库时 报 2017-01-01 02-00-00.mdf 不是主数据库文件。 (Microsoft SQL Server,错误: 5171)
标题: Microsoft SQL Server Management Studio无法为此请求检索数据。 (Microsoft.SqlServer.SmoEnum)有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476其他信息:执行 Transact-SQL 语句或批处理时...原创 2018-05-22 08:28:52 · 9171 阅读 · 1 评论