删除数据库日志文件的方法

9/1/2015来源:SQL技巧人气:3029

删除数据库日志文件的方法

你曾经有在执行SQL的时候,数据库报事务日志已满,然后执行报错。然后纠结于怎么删除数据库日志,捣鼓半天吗,现在就提供两种删除日志文件的方法,希望能够帮到你!

阅读目录

  • 方法一:手工操作
  • 方法二:存储过程代替手工操作
  • 示例存储过程下载
回到顶部方法一:手工操作

   1.数据库->右键->属性->选项-恢复模式->由完成切换成简单

   2.数据库->右键->任务->收缩-文件->由完成切换成简单->文件类型->日志->将文件收缩到

回到顶部方法二:存储过程代替手工操作

  

    --日志文件收缩至多少M    DECLARE @DBLogSise AS INT    SET @DBLogSise=0    --查询出数据库对应的日志文件名称    DECLARE @strDBName AS NVARCHAR(500)    DECLARE @strLogName AS NVARCHAR(500)    DECLARE @strSQL AS VARCHAR(1000)        SELECT         @strLogName=B.name,        @strDBName=A.name    FROM master.sys.databases AS A    INNER JOIN sys.master_files AS B    ON A.database_id = B.database_id    WHERE A.database_id=DB_ID()             SET @strSQL='    --设置数据库恢复模式为简单    ALTER DATABASE ['[email protected]+'] SET RECOVERY SIMPLE;    --收缩日志文件    DBCC SHRINKFILE ('''[email protected]+''' , '+CONVERT(VARCHAR(20),@DBLogSise)+');    --恢复数据库还原模式为完整    ALTER DATABASE ['[email protected]+'] SET RECOVERY FULL '    exec(@strSQL)    

1.在数据库中执行上面的存储过程

   2.然后再执行 EXEC dbo.usp_p_delDBLog @DBLogSise = 0 (收缩至多少M)

  

回到顶部示例存储过程下载

usp_p_delDBLog.sql

  

   下一篇将为大家带来:附加没有日志文件的数据库方法

如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】按钮。如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【关注我】。因为,我的写作热情也离不开您的肯定支持。

感谢您的阅读,如果您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是焰尾迭 。