大家好,这是我在博客园写的第一篇博文,之所以要开这个博客,是我对MS SQL技术学习的一个兴趣记录. 作为计算机专业毕业的人,自己对技术的掌握总是觉得很肤浅,博而不专,到现在我才发现自己的兴趣所在,于是我通过网络找了各种MS SQL技术的相关文档,总觉得讲得比较干涩,没有一个系统性,今年3月底我无意浏览到一个网站提供免费的性能调优的半年培训(http://www.sqlpassion.at/academy/performance-tuning-training-plan/),网站所有人会在每周往…
 分享Kali Linux 2017年第24周镜像文件  Kali Linux官方于6月11日发布2017年的第24周镜像.这次维持了11个镜像文件的规模.默认的Gnome桌面的4个镜像,E17.KDE.LXDE.MATE.XFCE桌面的各一个,手机版的包括ARMEL和ARMHF.有最近要安装Kali Linux系统的,可以考虑下载.因为这样可以节省升级包所花费的时间. 下载安装时候,建议64位电脑使用kali-linux-2017-W24-amd64.iso,32位电脑使用kali-linux…
恭喜您!在你面前就只剩下几页了,然后你就可以完成第1个月的SQL Server性能调优培训了.今天我将讲下页的一些限制,还有为什么你会喜欢这些限制,同时也会讨厌这些限制. 正如你在第2周学到的,数据页始终是8kb 的大小,而且你只能在上面存储8060 bytes.你的记录大小指示你在一个页里可以存储多少记录.当你与像CHAR,INT,DATETIME等定长类型数据类型打交道时,你会发现SQL Server有记录长度不能超过8060 bytes长度(包含7 bytes 的内部行开销)的限制. 页面…
哇哦,SQL Server性能调优培训已经进入第3周了!同时你已经对SQL Server内核运行机制有了很好的认识.今天我会讲下SQL Server中的区管理,因为这是个很重要的话题,我们会在第23周探讨TempDb.在最高级别来讲,区就是一组8张8k大小的页.因此一个区始终是64k的块(连续页).SQL Server内部施行2类区: 混合区 统一区 混合区和统一区 在混合区的8个页可以属于像表和索引的不同数据库对象.这也是说混合区可以指向不同的数据库对象.在另外一方面,在统一区里所有的8个页面…
大家好,欢迎来到第1周的SQL Server性能调优培训.在我们进入SQL Server性能调优里枯燥难懂的细节内容之前,我想通过讲解SQL Server如何执行一个查询来建立基础.这个部分非常重要,因为接下来的培训中我们会以这些概念来加深我们对SQL Server的认识. 当我们执行一个查询时,在SQL Server中最重要的组件有哪些,下面这张图片可以给大家一个概观的认识. 可以看到,SQL Server内部分成了2个部分:关系引擎和存储引擎.在关系引擎中最大的一个组件是查询优化器.查询优化…
大家好,欢迎回到性能调优培训.今天讨论SQL Server里的死锁(Deadlocking),第5个月的培训就结束了.当2个查询彼此等待,没有查询可以继续它的工作就会发生死锁.第一步我会概括介绍下SQL Server如何处理死锁.最后我会向你展示下SQL Server里一些特定死锁,还有你如何避免并解决它们. 死锁处理(Deadlock Hanging) 死锁的好处是SQL Server会自动检测并解决它们.为了解决死锁,SQL Server需要回滚最便宜的2个事务.在SQL Server上下文…
大家好,欢迎回到性能调优培训的第22周.上周我谈了SQL Server里的基线,今天我们继续,谈下SQL Server里的等待和I/O延迟统计.当我进行SQL服务器健康检查时,我总会使用这2个维度全局掌握下SQL Server的健康状况. 等待统计(Wait Statistics) 在SQL Server里每次你执行一个查询,查询会等待.初次看这个看起来很惨淡,但其实有一个非常好的原因,在SQL Server里总会等待.每次一个查询等待,SQL Server通过所谓的等待统计(Wait Stat…
在今天的性能调优培训里我们讨论下TempDb——SQL Server的公共厕所,在SQL Server里我是这样描述它的.我们的每个人都会经常使用TempDb.有些人直接使用它,有些人不直接使用它.今天我想给你概括介绍下SQL Server里TempDb的用法,另外我会给你为了更好的性能,如何配置TempDb的一些最佳实践. TempDb用法 我们的每个人使用TempDb.这是我们要接受的事实.因此按需配置TempDb非常重要——即为了获得良好的性能.TempDb存储下列3类对象: 用户对象(U…
哇哦,光阴似箭!欢迎回到性能调优培训的最后一期.今天我会详细讲下SQL Server里的数据库维护,尤其是索引维护操作,还有如何进行数据库维护. 索引维护 作为一个DBA,数据库维护是你工作中非常重要的一部分,让数据库获得最佳性能.一个SQL Server数据库就像一辆车:它需要经常的检查来保证运行没有问题,副作用,且拥有最大可能的性能.SQL Server数据库最重要的部分是它的索引及其对应的统计信息对象.SQL Server运行一段时间后会有索引碎片,统计信息必须更新,这样的话查询优化器才可…
上周通过探讨SQL Server如何执行一个查询奠定了基础.我也在那里提到页是8kb的缓存.今天我们对页进行进一步集中探讨,从性能调优角度挖掘出更多的细节. 页是SQL Server的基础,在SQL Server里一切都与页有关.当我们想提高查询性能时,我们可以减少SQL Server指定查询所需页的读取.在第二个月当我们讨论索引时,我们发现其实索引的结构也是由页组成的.当你不知道页是什么的时候,你就不能对SQL Server进行调优和故障排除. 数据页结构 在SQL Server中页的大小始终…