今天服务器一直很卡,暂未找到真正原因的时候想起来清理一下数据库LOG日志。
看了一下。8XXXXX多的KB。
大苹果发给我如下可以不停止sqlserver就能操作的帖子:
方法1、
--在查询分析器,选中所要清理日志的数据库,执行如下SQL
backup log 数据库名 with no_log
DBCC SHRINKFILE ( 日志文件名或日志文件ID,要缩小的目标大小,例子如下)
在当前数据库下
select fileid,groupid,name from sysfiles where groupid=0
----------------------------------------------------------
得到以下结果
| fileid | groupid | name |
| 2 | 0 | test_log |
以上结果,fileid为日志文件ID,name为test_log
你可以
backup log test with no_log
dbcc shrinkfile (2,2)
or
backup log test with no_log
dbcc shrinkfile ('test_log',2)
如果以后,不想要它变大,在数据库上点右键->属性->选项->故障恢复 模型 选择 简单模型就可以了!
或用SQL语句
alter database 数据库名 set recovery simple
方法2、
SQL SERVER企业管理器-》SQL SERVER组-》服务器-》数据库-》选中数据库实体-》右键-》所有任务-》分离数据库,
然后到数据库所在物理路径下删除.ldf文件,再数据库右键-》所有任务-》附加数据库,即可,会重新生成日志文件。
---------------------------------------------------------------------------------------------------
对于SQL 7.0以上两种方法可能不行,SQL SERVER企业管理器-》右键数据库-》所有任务-》截断数据库日志,按操作进行即可!
如何限制其增长?
SQL SERVER企业管理器-》右键数据库-》属性-》事务日志选项页-》选中将文件增长限制为:
输入你要的数

本文介绍了在SQL Server中如何在不停止服务的情况下清理数据库的日志文件(_LOG.LDF),包括使用SQL语句备份并收缩日志文件,以及通过设置简单恢复模式来限制日志文件的增长。同时提到了通过分离和附加数据库的方法删除日志文件,以及在SQL Server企业管理器中设置日志文件增长限制。
1785

被折叠的 条评论
为什么被折叠?



