桦仔的专栏

三届 SQL Server MVP,广州某公司 运维DBA。分享SQL Server知识

5
推荐
1824
阅读

2015年总结及2016年展望

2015算是跟微软亲密接触的一年,第一次参加MVP open day ,第一次去微软西雅图总部当然,跟梁老大也是第一次亲密接触,之前在2013年就知道天善智能这个网站,直到2015年7月份的时候才跟这个网站的主人吃饭见面,从交谈中获知他创办天善智能的原因,也从中感受到他的魄力和毅力。可以说,认识到梁老大是我的荣幸,我个人...

发表了文章 • 2016-02-03 21:47 • 10 条评论

0
推荐
2935
阅读

关于truncate table有没有使用鬼影记录的探讨

DELETE和TRUNCATE之间的区别摘抄自《SQLSERVER企业级平台管理实践》与delete相比,truncate具有以下优点:1、所用的事务日志空间较少delete语句每次删除一行,并在事务日志中为所删除的每行记录一个项。truncate table通过释放用于存储表数据的数据页来删除数据,并且在事务日志中只记录页释放这个动作,而不记录每一行2...

发表了文章 • 2015-10-05 11:47 • 0 条评论

0
推荐
2325
阅读

SQLSERVER的鬼影记录翻译二

原文链接:http://www.sqlskills.com/blogs/paul/ghost-cleanup-redux/之前写过一篇文章 Inside the Storage Engine: Ghost cleanup in depth.今天有一个问题在我教的那个班的其中一个学生被提出来,关于鬼影记录的,所以我想用一篇博文记录一下问题:鬼影记录会发生在堆表中吗?答案是:NO 除非在不正常的情况下当快照...

发表了文章 • 2015-10-05 11:45 • 0 条评论

0
推荐
2308
阅读

解剖SQLSERVER 完结篇 关于Internals Viewer源代码

大家可能都用过Internals Viewer这个软件《查看SQLSERVER内部数据页面的小插件Internals Viewer》但是不知道有多少人看过他的源代码呢?作者把源代码放在在CodePlex网站上面,但是这个源代码只支持SQL2008及以下,不支持SQL2008R2后来有人根据原作者的代码改写出了 SQL2008R2版本,叫做《Internals Viewer (updated...

发表了文章 • 2015-10-05 11:08 • 0 条评论

0
推荐
2180
阅读

解剖SQLSERVER 第十七篇 使用 OrcaMDF Corruptor 故意损坏数据库(译)

http://improve.dk/corrupting-databases-purpose-using-orcamdf-corruptor/有时候你必须先作恶,后行善。情况就是 当你想磨练你的数据库修复技能我现在添加了一个Corruptor 类到OrcaMDF里面 去测试新的RawDatabase 的功能。Corruptor 就跟他的名字一样--他会故意损坏数据库文件Corruptor 本身是比较简单的。Corruptor ...

发表了文章 • 2015-10-05 11:07 • 0 条评论

0
推荐
2407
阅读

解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译)

http://improve.dk/where-does-sql-server-store-the-source-for-stored-procedures/目前我正在扩展OrcaMDF Studio的功能 不单只支持系统表,DMVs 和用户表 而且也要支持存储过程。那很容易,我们只需要查询sys.procedures --或者查询sys.sysschobjs,因为当SQLSERVER没有在运行的时候我们是不能查询sys.procedures 的然...

发表了文章 • 2015-10-05 11:07 • 0 条评论

0
推荐
2346
阅读

解剖SQLSERVER 第十四篇 Vardecimals 存储格式揭秘(译)

http://improve.dk/how-are-vardecimals-stored/在这篇文章,我将深入研究vardecimals 是怎麽存储在磁盘上的。作为一般的介绍vardecimals 是怎样的,什么时候应该使用,怎样使用,参考这篇文章 vardecimal 存储格式启用了吗?首先,我们需要看一下vardecimals 是否已经开启了,因为他会完全改变decimals 的存储方式...

发表了文章 • 2015-10-05 11:05 • 0 条评论

0
推荐
2121
阅读

解剖SQLSERVER 第十三篇 Integers在行压缩和页压缩里的存储格式揭秘(译)

http://improve.dk/the-anatomy-of-row-amp-page-compressed-integers/当解决OrcaMDF对行压缩的支持的时候,视图解析整数的时候遇到了一些挑战。和正常的未压缩整数存储不同的是这些都是可变长度--这意味着1个整数的值50只占用1个字节,而不是通常的4个字节。这些不是新功能了,大家可以看一下vardecimal他被存储为可变...

发表了文章 • 2015-10-05 11:05 • 0 条评论

0
推荐
2265
阅读

解剖SQLSERVER 第十一篇 对SQLSERVER的多个版本进行自动化测试(译)

http://improve.dk/automated-testing-of-orcamdf-against-multiple-sql-server-versions/自从我发布了OrcaMDF Studio,我已经意识到SQL2005和SQL2008之间的一些系统表的差异。这些差异导致OrcaMDF 解析失败因为代码是针对 2008 R2的格式的 当需要做SQL2005的兼容时,我渐渐意识到我需要扩大多个SQLSERVER版本...

发表了文章 • 2015-10-05 11:04 • 0 条评论

0
推荐
2170
阅读

解剖SQLSERVER 第十篇 OrcaMDF Studio 发布+ 特性重温(译)

http://improve.dk/orcamdf-studio-release-feature-recap/自从我上次作了一个OrcaMDF特性概述之后,两个半月过去了。 只是两个半月过去了自从我上次一个OrcaMDF特性概述。从那时起我一直在忙着参加SQLSERVER的最顶级的三个会议:SQLBits、SQLPASS、SQL Rally大家对OrcaMDF的交流都很热烈,并且从他们身上获得了一...

发表了文章 • 2015-10-05 11:03 • 0 条评论

0
推荐
2064
阅读

解剖SQLSERVER 第九篇 OrcaMDF现在能通过系统DMVs显示元数据(译)

http://improve.dk/orcamdf-now-exposes-metadata-through-system-dmvs/我坐在去丹麦的火车上,参加在北欧的SQL RALLY会议的最后一站。在演讲的过程中,我根据OrcaMDF 的工作比较含蓄地宣布了OrcaMDF可以读取元数据现在,我也不妨在这里分享。除了在OrcaMDF中扩大对核心引擎的支持之外,另一个重要的我想要实现的主要功...

发表了文章 • 2015-10-05 11:03 • 0 条评论

0
推荐
2298
阅读

解剖SQLSERVER 第八篇 OrcaMDF 现在支持多数据文件的数据库(译)

http://improve.dk/orcamdf-now-supports-databases-with-multiple-data-files/ OrcaMDF 其中一个最新特性是支持多数据文件的数据库。这在解析上面需要作出相关的小改变,实际上大部分都是bug 修复代码由于之前只支持单个数据文件而引起的。然而这确实需要一些重大的重构而离开MdfFile 的主入口点,现在使用数据库...

发表了文章 • 2015-10-05 11:03 • 0 条评论

0
推荐
2314
阅读

解剖SQLSERVER 第六篇 对OrcaMDF的系统测试里避免regressions (译)

http://improve.dk/avoiding-regressions-in-orcamdf-by-system-testing/当我继续添加新功能和新的数据结构支持进去OrcaMDF软件的时候,bug的风险不断增加特别是当我开发一个很大的未知功能时,我不能预估结构和该结构的关联,为了降低风险,测试是很有必要的 单元测试单元测试是在面向对象编程里测试源代码某一个...

发表了文章 • 2015-10-05 11:01 • 0 条评论

0
推荐
2085
阅读

解剖SQLSERVER 第五篇 OrcaMDF里读取Bits类型数据(译)

http://improve.dk/reading-bits-in-orcamdf/Bits类型的存储跟SQLSERVER其他定长数据类型的存储很不一样。通常,所有定长列都会显示出来,一个条记录里定长数据部分的字段数据总是一个挨着一个我们可以写入磁盘的最小数据单位是一个字节,存储位类型数据的天真的方法就是使用一整个(字节@)来存储每一个位,使用常用的...

发表了文章 • 2015-10-05 11:00 • 0 条评论

0
推荐
2098
阅读

解剖SQLSERVER 第四篇 OrcaMDF里对dates类型数据的解析(译)

http://improve.dk/parsing-dates-in-orcamdf/在SQLSERVER里面有几种不同的date相关类型,当前OrcaMDF 支持三种最常用的date类型:date,datetime,smalldatetime SqlDate实现date 类型在三种类型之中是最简单的,他是一个3个字节的定长类型,存储了日期值它支持的日期范围从0001-01-01到9999-12-31默认值是1900-01...

发表了文章 • 2015-10-05 10:59 • 0 条评论