摘要: 检查: 日志文件的大小300M,通过dbcc sqlperf(logspace),日志文件使用率不到10%,不是日志文件满的问题。查看数据库日志 5月15日 5月10日结论:都是因为发生死锁后导致了问题的产生。另外看到很多日志提示: starting up database "databasename” dbcc for database "databasename”这个日志与数据库开启了自动关闭功能有关,初步怀疑这是导致问题产生的原因,但没有很充足的依据 阅读全文
posted @ 2013-07-26 17:58 i6first 阅读(1990) 评论(0) 推荐(0) 编辑
摘要: 一、概述列存储索引是SQL Server 2012中为提高数据查询的性能而引入的一个新特性,顾名思义,数据以列的方式存储在页中,不同于聚集索引、非聚集索引及堆表等以行为单位的方式存储。因为它并不要求存储的列必须唯一,因此它可以通过压缩将重复的列合并,从而减少查询时的磁盘IO,提高效率。为了分析列存储索引,我们先看看B树或堆中的数据的存储方式,如下图,在page1上,数据是按照行的方式存储数据的,假设一行有10列,那么在该页上,实际的存储也会以每行10列的方式存储,如下图中的C1到C10。假设我们执行select c1,c2 from table时,数据库会读取整个page1,显然,从C3到C1 阅读全文
posted @ 2013-07-26 17:57 i6first 阅读(1966) 评论(0) 推荐(0) 编辑
摘要: 重建TempDB的方法 环境: Sqlserver 2008 R2的TempDB文件被误删除,导致Sqlserver服务无法启动。 分析: 没有TempDB数据库并非无法启动,只不过启动的方式与往常不同,简单的说,就是希望Sqlserver引擎在启动的时候不去启动具体的数据库,这样以后就给了DBA足够的资源来恢复数据库的运行,具体实现方法如下: 1. 进入cmd,cd切换到sqlserve... 阅读全文
posted @ 2013-05-11 21:34 i6first 阅读(983) 评论(1) 推荐(0) 编辑
摘要: 环境:DB:SQLSERVER 2008 R2;WEB:windows server 2008 r2;现象:在WEB服务器端导出报表时,报错,如下:未能加载文件或程序集”Microsoft.SqlServer.SqlClrProvider, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91“分析:该问题是因为WEB服务器缺少sharedManagementObjects导致,安装该组件即可。安装时,如果WEB服务器没有SQLCLI时,安装进程将无法继续,需要先安装SQLCLI,两个组件的下载地址如下:http: 阅读全文
posted @ 2013-05-06 15:00 i6first 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 数据库内存浅析 内存是数据库一个非常大的主题,可是说是影响数据库性能的关键因素之一, 这几天研究了下,不是很深,与大家分享下。 初识数据库内存 内存存在的意义在于协调高速的CPU和低速的磁盘之间的读写差距,对数据库而言, 内存中的数据越多意味着读写更快、性能更好。当然,在服务器上不可能给你无限制的内存, 这就需要我们合理配置数据库内存,以达到最佳性能。 在SQL Server数据库中... 阅读全文
posted @ 2012-12-14 16:19 i6first 阅读(388) 评论(0) 推荐(0) 编辑