01 2015 档案

摘要:http://www.cnblogs.com/shanksgao/p/4254942.html 高兄这篇文章很好的谈论了由于数据隐式转换造成执行计划不准确,从而造成了死锁。那如果在事情出现之前发现了这类潜在的风险岂不是更好? 那么我们来看一个简单的例子,如代码清单1所示。 1: SELECT * 2: FROM Hu... 阅读全文
posted @ 2015-01-28 12:01 CareySon 阅读(5235) 评论(12) 推荐(14) 编辑
摘要:SQL Server中使用扩展事件捕捉所需的信息后,可以选择存放的位置。比如说内存或文件中,但无论存在哪里,其本质都是一个大XML。因此在SQL Server中读取该XML就是解析扩展事件结果的方式。 微软官方或者一些SQL Server论坛提供了使用SQL XML解析扩展事件的脚本,如代码清单1所示。 1: WITH events_cte ... 阅读全文
posted @ 2015-01-26 14:35 CareySon 阅读(2420) 评论(2) 推荐(2) 编辑
摘要:最近有一个朋友问我一个关于给查询操作强制上X锁却不阻塞的问题。该查询写在一个存储过程中,代码如代码1所示: 1: create PROC [dbo].[GetCityOrders] 2: @city NVARCHAR(10) , 3: ... 阅读全文
posted @ 2015-01-15 16:08 CareySon 阅读(2430) 评论(21) 推荐(7) 编辑
摘要:在之前客户咨询案例中,很多客户应用程序连接SQL Server直接用的就是SA帐号。如果对数据库管理稍微严格一点的话,就不应该给应用程序这种权限,通常应用程序只需要进行增删改查,而很少有DDL操作,因此配置帐号时应该遵循“最小权限分配”的原则仅仅赋予所需的权限。 对于应用程序来说,最小的权限通常就是就是给予读权限,写权限和执行存储过程权限。由于为了防止SQL注入导致的数据库信息泄... 阅读全文
posted @ 2015-01-09 10:22 CareySon 阅读(2470) 评论(0) 推荐(2) 编辑
摘要:最近工作中有一个需求,就是某一个比较重要的业务表经常被莫名其妙的变更。在SQL Server中这类工作如果不事前捕获记录的话,无法做到。对于捕获变更来说,可以考虑的选择包括Trace,CDC。但Trace的成本比较大,对于负载量较高的系统并不合适,而CDC需要影响业务库,因此SQL Server Audit就是一个比较好的选择。  在SQL Server中,如果只是希望获得表的... 阅读全文
posted @ 2015-01-05 17:00 CareySon 阅读(4798) 评论(8) 推荐(4) 编辑