番茄的梦想

那一抹夕阳

  博客园  :: 首页  ::  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 76 下一页

2012年12月14日

摘要: 为了方便查阅资料,特将网上搜索到的Redis相关安装配置进行归档整理:=============================================================window平台Redis安装 下载地址: http://code.google.com/p/servicestack/wiki/RedisWindowsDownload Redis文件夹有以下几个文件 redis-server.exe:服务程序 redis-check-dump.exe:本地数据库检查 redis-check-aof.exe:更新日志检查 redis-benchmark.exe... 阅读全文
posted @ 2012-12-14 10:25 番茄的梦想 阅读(240) 评论(0) 推荐(0) 编辑

2012年12月1日

摘要: 简介 死锁的本质是一种僵持状态,是多个主体对于资源的争用而导致的。理解死锁首先需要对死锁所涉及的相关观念有一个理解。一些基础知识 要理解SQL Server中的死锁,更好的方式是通过类比从更大的面理解死锁。比如说一个经典的例子就是汽车(主体)对于道路(资源)的征用,如图1所示。 图1.对于死锁的直观理解 在图1的例子中,每队汽车都占有一条道路,但都需要另外一队汽车所占有的另一条道路,因此互相阻塞,谁都无法前行,因此造成了死锁。由这个简单的例子可以看出,发生死锁需要四个必要条件,如下:1)互斥条件: 主体对于资源是独占的,图1中每条汽车道只能跑一队汽车,不能跑第二队。2)请求和等待条件: 指主. 阅读全文
posted @ 2012-12-01 15:28 番茄的梦想 阅读(225) 评论(0) 推荐(0) 编辑

摘要: 简介 ACID,是指在可靠数据库管理系统(DBMS)中,事务(transaction)所应该具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability).这是可靠数据库所应具备的几个特性.下面针对这几个特性进行逐个讲解.理解原子性(Atomicity) 原子性意味着数据库中的事务执行是作为原子。即不可再分,整个语句要么执行,要么不执行。 在SQL SERVER中,每一个单独的语句都可以看作是默认包含在一个事务之中: 所以,每一个语句本身具有原子性,要么全部执行,这么全部不执行,不会有中间状态: 上面说了,每一条.. 阅读全文
posted @ 2012-12-01 15:25 番茄的梦想 阅读(203) 评论(0) 推荐(0) 编辑

摘要: 简介 在SQL Server中,每一个查询都会找到最短路径实现自己的目标。如果数据库只接受一个连接一次只执行一个查询。那么查询当然是要多快好省的完成工作。但对于大多数数据库来说是需要同时处理多个查询的。这些查询并不会像绅士那样排队等待执行,而是会找最短的路径执行。因此,就像十字路口需要一个红绿灯那样,SQL Server也需要一个红绿灯来告诉查询:什么时候走,什么时候不可以走。这个红绿灯就是锁。 图1.查询可不会像绅士们那样按照次序进行排队为什么需要锁 在开始谈锁之前,首先要简单了解一下事务和事务的ACID属性。可以参看我之前的一篇关于ACID的文章。如果你了解了事务之间的影响方式,你就应该. 阅读全文
posted @ 2012-12-01 15:24 番茄的梦想 阅读(237) 评论(0) 推荐(0) 编辑

摘要: 除了 Standard(默认)模板以外,SQL Server Profiler还包含几个可监视特定类型的事件的预定义模板。下表列出了预定义模板、其用途以及其捕获何种事件类的信息。模板名称模板用途事件类SP_Counts捕获一段时间内存储过程的执行行为。SP:StartingStandard创建跟踪的通用起点。捕获所运行的全部存储过程和 Transact-SQL 批处理。用于监视常规数据库服务器活动。Audit LoginAudit LogoutExistingConnectionRPC:CompletedSQL:BatchCompletedSQL:BatchStartingTSQL捕获客户端提 阅读全文
posted @ 2012-12-01 13:22 番茄的梦想 阅读(3776) 评论(0) 推荐(0) 编辑

2012年11月21日

摘要: 本文演示了 SQL Server 2005 分区表分区切换的三种形式:1. 切换分区表的一个分区到普通数据表中:Partition to Table;2. 切换普通表数据到分区表的一个分区中:Table to Partition;3. 切换分区表的分区到另一分区表:Partition to Partition。 并指出了在分区表分区切换过程中的注意事项。-- 创建分区函数create partition function PF_Orders_OrderDateRange(datetime)asrange right for values ('1997-01-01','1 阅读全文
posted @ 2012-11-21 15:43 番茄的梦想 阅读(220) 评论(0) 推荐(0) 编辑

2012年11月19日

摘要: 据了解绝大多数开发人员对于索引的理解都是一知半解,局限于大多数日常工作没有机会、也什么没有必要去关心、了解索引,实在哪天某个查询太慢了找到查询条件建个索引就ok,哪天又有个查询慢了,再建立个索引就是,或者干脆把整个查询SQL直接发给DBA,让DBA直接帮忙优化了,所以造成的状况就是开发人员对于索引的理解、认识很局限,以下就把我个人对于索引的理解及浅薄认识和大家分享下,希望能解除一些大家的疑惑,一起走出索引的误区误区1.在表上建立了索引,在查询时用到了索引的列,索引就一定会生效 首先明确下这样的观点是错误的,SQL Server查询优化器是基于开销进行选择的优化器,通过一系列复杂判断来决定... 阅读全文
posted @ 2012-11-19 22:23 番茄的梦想 阅读(201) 评论(0) 推荐(0) 编辑

摘要: 真正理解查询计划和发现与计划有关的问题,需要对构成这些计划的查询运算符有深入的了解.总而言之,有许多运算符值得探讨.扫描与查找 扫描与查找操作均是SQL Server从表或索引中读取数据采用的迭代器,这些也是SQL Server支持的最基本的运算.几乎在每一个查询计划中都可以找到,因此理解它们的不同是很重要的,扫描是在整张表上进行处理,而索引是在整个页级上进行处理,而查找则返回特定谓词上一个或多个范围内的数据行. 下面让我们看一个扫描的例子(这里使用Northwind数据库) SELECT [OrderId] FROM [Orders] WHERE [RequiredDate] = ' 阅读全文
posted @ 2012-11-19 22:16 番茄的梦想 阅读(548) 评论(0) 推荐(0) 编辑

2012年11月6日

摘要: 在两个或多个SQL Server进程中,每一个进程锁定了其他进程试图锁定的资源,就会出现死锁,例如, 进程process1对table1持有1个排它锁(X),同时process1对table2请求1个排它锁(X), 进程process2对table2持有1个排它锁(X),同时process2对table1请求1个排它锁(X)类似这种情况,就会出现死锁,除非当某个外部进程断开死锁,否则死锁中的两个事务都将无限期等待下去。 Microsoft SQL Server 数据库引擎死锁监视器定期检查陷入死锁的任务。如果监视器检测到循环依赖关系,将选择其中一个任务作为牺牲品(通常是选择占资源比较小的进程作 阅读全文
posted @ 2012-11-06 18:45 番茄的梦想 阅读(517) 评论(0) 推荐(1) 编辑

摘要: 死锁(deadlock)指进程之间互相永久阻塞的状态,SQL可以检测到死锁,并选择终止其中一个事务以干预死锁状态。两个进程发生死锁的典型例子是:进程T1中获取锁A,申请锁B;进程T2中获取锁B,申请锁A,我们下面动手来演示一下这种情况:1. 创建一个Database,名为InvDB。2. 执行下面脚本创建person表并填充两条数据:3. 在SQL Server Management Studio的两个窗口中同时执行下面的查询:这段代码在默认的READ COMMITTED隔离级别下运行,两个进程分别在获取一个排它锁的情况下,申请对方的共享锁从而造成死锁。可见一个进程可以正常更新并显示结果,而另 阅读全文
posted @ 2012-11-06 18:44 番茄的梦想 阅读(371) 评论(0) 推荐(0) 编辑

上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 76 下一页