sqlserver2008日志清除后,数据库反映非常慢
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver2008日志清除后,数据库反映非常慢相关的知识,希望对你有一定的参考价值。
程序报错显示数据写入失败后,强行重启的服务器,后发现服务器磁盘空间满,一个数据库的日志过大,后用dbcc shrinkfile收缩数据库,在重新生成索引,发现数据反映非常慢(响应效率不到之前的一半),而在SQLSERVER2008上的另一个没有进行任何操作的数据库,没有变慢的情况,请好心人帮忙,不知道是为什么了。
参考技术A sqlserver2008日志文件过大的解决办法1、先分离数据库,到数据库存放目录更改一下日志文件名称。
2、进行附加,会报错。提示找不到日志文件,没有关系,在下方的表格中删除这个日志文件,点击确定,附加成功!
3、sql server 2008 r2 会自动为找不到日志文件的数据库添加一个日志文件,最后在数据库属性页中设置一下数据库的最大限制就可以了。
试试这种方法, 先进行一下测试!这样可以解决日志文件过大的问题!
我的这种方法,没有进行收缩日志文件, 而是重新生成一个日志文件。 参考技术B 是仅某一个或几个查询慢,还是库里面任何随便一条语句都慢?追问
任何一条语句都慢。
追答磁盘空间已满应该收缩日志吧,而且重新生成索引也会写入大量日志的,
如果你的表很大生成索引也会很慢,你的索引生成完了吗?
先收缩的日志,收缩完是11M,然后重新生成的索引,生成索引后日志2.3G,用DBCC SHOWCONTIG 察看了主要表 显示碎片都是 0%应该是生成完了吧。不过以前数据库也有阻塞,可是阻塞不是很厉害,现在阻塞比较严重,但最近客户端没有更新过。刚才看了下日志,依然2.3G 运行一天了,依旧很慢。
追答一天2.3G的日志量应该操作算频繁了吧
如果另一个库的操作也频繁的话,应该不是读写瓶颈吧
建议你先更新一下统计信息观察一段时间
先谢谢您了,这么热心,2.3G应该都是重新生成索引产生的,今天一天我看了下,基本上没变化,您说的更新统计信息是要怎么做呢?我这边真的很着急,DBA还出差了,下周才能回来,真怕回来之前就瘫痪了呀。
追答UPDATE STATISTICS tablename
你先更新一个单表看看情况,任何一条语句都慢的话可能问题比较严重吧
你说的另一个2008的数据库是另外的一个实例还是同一个实例下的另一个数据库?
还有你说的强行重启服务器,也许会产生一些异常,建议checkdb检查一下
UPDATE STATISTICS tablename这个我等到晚上没有业务的时候试一下了,另一个数据库是同实例下的。万分感谢。
本回答被提问者采纳以上是关于sqlserver2008日志清除后,数据库反映非常慢的主要内容,如果未能解决你的问题,请参考以下文章