当前位置:数据库 > > 正文

sql server清理日志(SQL Server 2008 清空删除日志文件瞬间缩小日志到几M)

时间:2021-10-19 06:26:49类别:数据库

sql server清理日志

SQL Server 2008 清空删除日志文件瞬间缩小日志到几M

sql 在使用中每次查询都会生成日志,但是如果你长久不去清理,可能整个硬都堆满哦,笔者就遇到这样的情况,直接网站后台都进不去了,今天到数据库中一看竟然达到了29G的日志文件,下面我们一起来学习一下如何清理这个日志吧

SQL2008清空删除日志:

方法一:

  • USE [master]
    GO
    ALTER DATABASE AFMS SET RECOVERY SIMPLE WITH NO_WAIT
    GO
    ALTER DATABASE AFMS SET RECOVERY SIMPLE
    GO
    USE AFMS
    GO
    DBCC SHRINKFILE (N'AFMS_Log' , 11, TRUNCATEONLY) 
    GO
    USE [master]
    GO
    ALTER DATABASE AFMS SET RECOVERY FULL WITH NO_WAIT
    GO
    ALTER DATABASE AFMS SET RECOVERY FULL
    GO
    
  • '在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。

  • USE [master]
    GO
    ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
    GO
    ALTER DATABASE DNName SET RECOVERY SIMPLE --简单模式
    GO
    USE DNName
    GO
    DBCC SHRINKFILE (N'DNName_Log' , 11, TRUNCATEONLY) 
     
    GO
     
     '这里的DNName_Log 如果不知道在sys.database_files里是什么名字的话,可以用以下注释的语句进行查询
     
    'USE DNName
     
    'GO
     
    'SELECT file_id, nameFROM sys.database_files;
     
    'GO
    USE [master]
    GO
    ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT
    GO
    ALTER DATABASE DNName SET RECOVERY FULL --还原为完全模式
    GO
    
  • SQL2005清空删除日志:

  • Backup Log DNName with no_log '这里的DNName是你要收缩的数据库名,自己注意修改下面的数据库名,我就不再注释了。
    go
    dump transaction DNName with no_log 
    go
    USE DNName
    DBCC SHRINKFILE (2)
    Go
    
  • sqlserver2000压缩日志

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

  • DUMP TRANSACTION [jb51] WITH NO_LOG 
    BACKUP LOG [jb51] WITH NO_LOG 
    DBCC SHRINKDATABASE([jb51])
    
  • 这篇文章就介绍到这了,文中整合了开心学习网以前发布的文章,需要的朋友可以参考一下。

    标签:
    上一篇下一篇

    猜您喜欢

    热门推荐