5ucms论坛

标题: SQL Server 2008 清空删除日志文件(瞬间日志变几M) [打印本页]

作者: admin    时间: 2019-11-16 00:07
标题: SQL Server 2008 清空删除日志文件(瞬间日志变几M)
sql 在使用中每次查询都会生成日志,但是如果你长久不去清理,可能整个硬都堆满哦,笔者就遇到这样的情况,直接网站后台都进不去了。下面我们一起来学习一下如何清理这个日志吧

SQL2008清空删除日志:

方法一:



  1. USE [master]
  2. GO
  3. ALTER DATABASE AFMS SET RECOVERY SIMPLE WITH NO_WAIT
  4. GO
  5. ALTER DATABASE AFMS SET RECOVERY SIMPLE
  6. GO
  7. USE AFMS
  8. GO
  9. DBCC SHRINKFILE (N'AFMS_Log' , 11, TRUNCATEONLY)
  10. GO
  11. USE [master]
  12. GO
  13. ALTER DATABASE AFMS SET RECOVERY FULL WITH NO_WAIT
  14. GO
  15. ALTER DATABASE AFMS SET RECOVERY FULL
  16. GO
复制代码



'在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。

  1. USE [master]
  2. GO
  3. ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
  4. GO
  5. ALTER DATABASE DNName SET RECOVERY SIMPLE --简单模式
  6. GO
  7. USE DNName
  8. GO
  9. DBCC SHRINKFILE (N'DNName_Log' , 11, TRUNCATEONLY)

  10. GO

  11. '这里的DNName_Log 如果不知道在sys.database_files里是什么名字的话,可以用以下注释的语句进行查询

  12. 'USE DNName

  13. 'GO

  14. 'SELECT file_id, nameFROM sys.database_files;

  15. 'GO
  16. USE [master]
  17. GO
  18. ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT
  19. GO
  20. ALTER DATABASE DNName SET RECOVERY FULL --还原为完全模式
  21. GO
复制代码



SQL2005清空删除日志:

  1. Backup Log DNName with no_log '这里的DNName是你要收缩的数据库名,自己注意修改下面的数据库名,我就不再注释了。
  2. go
  3. dump transaction DNName with no_log
  4. go
  5. USE DNName
  6. DBCC SHRINKFILE (2)
  7. Go
复制代码


sqlserver2000压缩日志

可以将jb51.ldf文件变得很小,方便备份数据库等,在sqlserver查询分析器中执行即可。



  1. DUMP TRANSACTION [jb51] WITH NO_LOG
  2. BACKUP LOG [jb51] WITH NO_LOG
  3. DBCC SHRINKDATABASE([jb51])
复制代码






欢迎光临 5ucms论坛 (http://bbs.5ucms.com/) Powered by Discuz! X3.2