野蛮木木原创 转载请注明出处和链接

思考SQL Server三十问之六作业系统

摘要: 6. Job信息我们可以通过哪些表获取;系统正在运行的语句可以通过哪些视图获取;如何获取某个T-SQL语句的IO、Time等信息;思考:过去,只有几天服务器需要管理的时候,作业系统都是通过管理器来查看jobhistory的,这样直观,也挺方便的。。。不过如果服务器多起来了,一台台remote就麻烦了。这个时候可以通过msdb的系统表进行状态查询。所有的作业定义,日志,历史等,都存储在msdb里面的系统表中。msdb.dbo.sysjobactivity:代理作业的活动和状态msdb.dbo.sysjobhistory:作业历史msdb.dbo.sysjobs:作业定义msdb.dbo.sysj 阅读全文
posted @ 2012-05-30 00:21 野蛮木木 阅读(821) 评论(0) 推荐(0) 编辑

思考SQL Server三十问之五视图索引

摘要: 5. 视图上我们能建索引吗,如果能建的话,会啥好处和坏处;视图上建索引和表上建索引有啥区别;思考:这个相对容易理解些:视图,虚拟化的表,没有实际的物理存储数据,而索引视图则是视图结果上建立索引,达到减少索引数据大小的目的。视图索引,可以创建索引,不过在上面有诸多条件的限制,一般应用与OLAP,或者更新量较少的表。好处:就是可以缩减索引的大小,更加精确定位到数据。坏处:也明显,更新索引的开销要大于表上的索引,OLTP上少用...视图索引:基于视图上的,固化存储的数据量小表索引:b-树结构ps:过去做的oltp系统中,从来没有使用过视图索引,对这个索引的用法和好处知之不多;跟普通表的索引的对比也就 阅读全文
posted @ 2012-05-27 13:50 野蛮木木 阅读(401) 评论(0) 推荐(0) 编辑

思考SQL Server三十问之四索引基础

摘要: 4. Index有哪些类型,它们的区别和实现原理是什么,索引有啥优点和缺点;如何为SQL语句创建合适的索引,索引创建时有哪些需要注意的项,如何查看你创建的索引是否被使用;如何维护索引;索引损坏如何检查,怎么修复;T-SQL有更好的索引存在,但是运行时并没有使用该索引,原因可能是什么;思考:索引设计的思路是采用了空间换时间的概念,一个好的数据结构,合理索引,可以让数据库的性能提高许多;当然不合理的索引,也不能提高查询的效率,而是浪费空间。索引的类型:1. 聚集索引: 聚集索引基于聚集索引键按顺序排序和存储表或视图中的数据行,是一种B-树结构。2. 非聚集索引:索引上顺序存储的键与堆表行定位符或聚 阅读全文
posted @ 2012-05-26 00:07 野蛮木木 阅读(381) 评论(0) 推荐(0) 编辑

思考SQL Server三十问之三诊断tempdb

摘要: 3. 有哪些操作会使用到TempDB;如果TempDB异常变大,可能的原因是什么,该如何处理;思考:在过去使用Sql server2005的时候,更多是关注model,为了实现标准化的东西;自从在mysql上碰到一些存在性能问题的服务器之后,才开始注重mssql的性能;然而现在很少有机会去做mssql的性能优化。tempdb在使用临时表、表变量的过程中尤为需要注意。1) 有哪些操作会使用到TempDB tempdb 数据库用于存储下列对象:用户对象、内部对象和版本存储区。MSDN上拥有更加详细的例子。http://msdn.microsoft.com/zh-cn/library/ms3453. 阅读全文
posted @ 2012-05-22 14:01 野蛮木木 阅读(612) 评论(0) 推荐(0) 编辑

思考SQL Server三十问之二系统数据库

摘要: 2. 系统DB有哪些,都有什么作用,需不需要做备份,为什么;损坏了如何做还原(主要是master库);思考:系统数据库的重要性不言而喻,了解系统数据库的作用,就是了解mssql是如何管理sql server工作的。这里面比较重要的master是统管全局的数据库,tempdb在很多情况下是性能的瓶颈db,model可以做很多标准化的东西。master:系统数据库,该库主要是管理和存储server的配置项,用户,权限,端点,link server...tempdb: 使用最频繁的库,提供全局的交换存储空间。包含(不限于)如下几种对象:1) 用户显性的创建的临时对象:表变量、临时表、游标、临时存储过 阅读全文
posted @ 2012-05-20 21:32 野蛮木木 阅读(305) 评论(0) 推荐(0) 编辑

思考SQL Server三十问之一字符类型

摘要: 1.char、varchar、nvarchar之间的区别(包括用途和空间占用);xml类型查找某个节点的数据有哪些方法,哪个效率高;使用存储过程和使用T-SQL查询数据有啥不一样;思考:数据类型是最基本的东西,整形和字符又是最常用的类型;了解char/varchar/nvarchar的用途,才能设计出更好的数据结构;char(n):定长,一般用于单号/ISIN/代码...当字符达不到n的长度时,后面空格补齐;空间占用n个字节varhcar(n):不定长,这里的n是字节数,用途甚广。后面多余空格会截取只保留一个。空间占用实际长度+2nvarchar(n):不定长,与varchar类似,这里的n可 阅读全文
posted @ 2012-05-17 00:45 野蛮木木 阅读(413) 评论(0) 推荐(0) 编辑

关于自己

摘要: 看了飞洋过海的《SQL Server DBA三十问》,觉得对开发和运营都有着非常不错的指导意义。这两年放在mssql上的心思不多,怕知识的积累不深,尝试着去回答这些问题(也是我开这个博客的最初的原因),加深下自己对mssql的理解。这些天看了不少博客园的文章,和msdn的讲解,才发现过去使用了sqlserver不少的功能,却也只限于使用,对其中的原理并没有深刻的理解,真是书到用时方恨少呀。对自己的说的话: 逆水行舟,不进则退! 阅读全文
posted @ 2012-05-15 18:55 野蛮木木 阅读(146) 评论(0) 推荐(0) 编辑