日期:2014-05-19  浏览次数:20616 次

36G的日志sqlserver来说算是大了吗?
最近服务器的速度比较慢,看了看数据文件20多G,日志文件36G,在我印象当中5G的日志就不算小了。
各位怎么看?

------解决方案--------------------
不算大, 不过, 楼主应该考虑定期备份数据库和收缩日志文件
------解决方案--------------------
同意一楼
------解决方案--------------------
清空日志文件
DUMP TRANSACTION 库名 WITH NO_LOG

1: 删除LOG
1:分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
3:附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K
再将此数据库设置自动收缩
或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。

EXEC sp_detach_db @dbname = 'pubs '
EXEC sp_attach_single_file_db @dbname = 'pubs ',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf '


2:清空日志
DUMP TRANSACTION 库名 WITH NO_LOG

再:
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了

3: 如果果想以后不让它增长
企业管理器->服务器->数据库->属性->事务日志->将文件增长限制为2M

截断事务日志:
BACKUP LOG { database_name | @database_name_var }
{
[ WITH
{ NO_LOG | TRUNCATE_ONLY } ]
}

------解决方案--------------------
不过好象也不小了啊~~~~~
可能我没见过大的,嘻嘻~~~~
------解决方案--------------------
收缩数据库代码:
dump transaction databasename with no_log
backup log databasename with no_log
dbcc shrinkdatabase(databasename)
------解决方案--------------------
跟着老大的脚步前进
------解决方案--------------------
我觉得没必要,有数据备就成了,何必那么大的日志备
------解决方案--------------------
还是要收缩一下啦,我之前的一个库日志有3G多,我就看不惯了,一冲动,日志就被我变成15M了,后来将库属性的恢复模式改为简单,现在日志出没什么变化,一个字爽呀,以前2周就变3G了
------解决方案--------------------
恩,日志这个东西,我是每天备份出来后截断,这样就小很多啊

备份出来后压缩,就很小了
------解决方案--------------------
庞然大物了
------解决方案--------------------
好像没有资料说什么临界值的,只要定期备份日志,并注意收缩文件就好了
------解决方案--------------------
超过5G就是巨物了,以前弄个9G的日志都差点死人.