转载:有关SQL server connection Keep Alive 的FAQ(3)
摘要:转载:http://blogs.msdn.com/b/apgcdsd/archive/2012/06/07/sql-server-connection-keep-alive-faq-3.aspx这个是SQL Server Keep Alive FAQ文章的最后一篇。 问题1:为什么我在客户端设置了KeepAlive值,但是我使用SQL server management studio 测试的时候,该值总是不起作用? [答]目前市场上主流的数据库访问技术有ODBC,OLEDB,SQL native client 和 SQLclient。其中SQLclient是.NET里面使用的托管prov...
阅读全文
posted @
2013-08-20 21:57
stswordman
阅读(864)
推荐(1) 编辑
转载:有关SQL server connection Keep Alive 的FAQ(2)
摘要:转: http://blogs.msdn.com/b/apgcdsd/archive/2012/05/18/sql-server-connection-keep-alive-faq-2.aspx在下面这篇文章里面介绍了有关keepalive的一些FAQ: http://blogs.msdn.com/b/apgcdsd/archive/2011/05/03/sql-server-connection-keepalive-faq.aspx 这篇文章再进一步讨论有关Keep Alive的几个问题. 1、Keep Alive机制,是否只和特定的provider有关,比如SQL native clie.
阅读全文
posted @
2013-08-20 21:56
stswordman
阅读(415)
推荐(1) 编辑
转载:有关SQL server connection KeepAlive 的FAQ
摘要:转:http://blogs.msdn.com/b/apgcdsd/archive/2011/05/03/sql-server-connection-keepalive-faq.aspx1、什么是SQL server TCP连接的keep Alive? 简单说,keep alive 是SQL server在建立每一个TCP 连接的时候,指定了TCP 协议的keepaliveinterval 和keepalivetime参数。这样对每个TCP连接,如果该连接空闲时间(没有任何数据交互)超过keepalivetime,TCP协议会自动发出keepalive 包检测连接存活与否。如果keepali.
阅读全文
posted @
2013-08-20 21:54
stswordman
阅读(928)
推荐(1) 编辑
transactional replication 的immediate_sync属性
摘要:在默认情况下,immediate_sync是关闭的,这个属性可以在创建publication时指定,也可以在创建完毕后修改。 如果immediate_sync为true, snapshot 文件和replicated transaction将一直保留到data retention.然后才会被删除。这会导致distribution 数据库增长,复制性能下降。 所以推荐设置为false. 需要注意的时,如果一个数据库有多个publication,只要其中有一个publication的immediate_sync为true,将会导致这个数据库的所有publication的replicated tra
阅读全文
posted @
2013-08-19 13:51
stswordman
阅读(894)
推荐(0) 编辑
一个事务复制的bug--更新丢失
摘要:有两种情况会造成更新丢失,第一种是不正确的设置,例如外键或触发器的“Not For Replication” (NFR)属性没有开启。详情请参考http://blogs.msdn.com/b/apgcdsd/archive/2012/01/10/10254809.aspx第二种是产品bug,例如使用...
阅读全文
posted @
2013-08-15 09:18
stswordman
阅读(1748)
推荐(3) 编辑
Alwayson+Replication
摘要:本文将介绍如何实现Alwayson + Replication ,通过AlwaysOn实现Publicationdatabase的高可用性,使Publicationdatabase在failover 之后事务复制可以正常运行。 拓扑如下: Publisher primary Denali1 Publ
阅读全文
posted @
2013-08-12 11:14
stswordman
阅读(3327)
推荐(3) 编辑
事务复制中的snapshot
摘要:Snapshot agent读取article的信息,将article的内容和脚本放置到snapshot文件夹中; 接下来distribution agent会读取这些快照文件,传输到订阅,完成初始化操作。期间distribution agent需要处理很多事情,例如判断快照是否可用,需要应用那些快照文件,传输过程中发生中断怎么办 等等。这些都需要distribution agent来协调。读完本文之后您会对这些处理方式有所了解,也会帮助您更好地判断当前事务复制的状态以及进行错误排查。 在此之前,我要先简单地介绍一下distribution agent的工作方式:...
阅读全文
posted @
2013-08-08 08:04
stswordman
阅读(2640)
推荐(3) 编辑
如何查看distirbution agent的执行进度
摘要:在transactional replication troubleshooting的过程中,经常会遇到下面的场景: 客户在发布端执行了一个几百万行的更新,结果导致性能下降。 客户很想知道目前distribution agent的进度,完成的百分比,决定是等下去还是跳过这个过程。如果已经完成了90%,那么贸然停止就非常可惜了,并且rollback的操作也是要很长时间的。 下面介绍如何查看进度。 如果distribution agent已经启用了verbose log,可以通过verbose log来查看进度. Command id代表已经执行过的数量;transaction seqno表示正.
阅读全文
posted @
2013-08-07 14:02
stswordman
阅读(1313)
推荐(1) 编辑
SQL Server 2012 内存管理 (memory management) 改进
摘要:转自 http://blogs.msdn.com/b/apgcdsd/archive/2013/07/11/sql-server-2012-memory-management.aspxSQL Server 2012 的内存管理和以前的版本相比,有以下的一些变化。一.内存分配器的变化SQL Server 2012以前的版本,比如SQL Server 2008 R2等,有single page allocator 和multi page allocator。也就是说,如果申请的内存是8k以内的,就会有单页分配器分配,而大于8kb的内存请求,使用multi page 分配器来管理。所以,如果你运行D
阅读全文
posted @
2013-08-06 07:29
stswordman
阅读(2931)
推荐(5) 编辑