`
lovnet
  • 浏览: 6921395 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

清除日志和收缩日志

 
阅读更多

--清除日志:
DECLARE @LogicalFileName sysname,
@MaxMinutes INT,
@NewSize INT
USE szwzcheck -- 要操作的数据库名
SELECT @LogicalFileName = 'szwzcheck_Log', -- 日志文件名
@MaxMinutes = 10, -- Limit on time allowed to wrap log.
@NewSize = 20 -- 你想设定的日志文件的大小(M)
-- Setup / initialize
DECLARE @OriginalSize int
SELECT @OriginalSize = size
FROM sysfiles
WHERE name = @LogicalFileName
SELECT 'Original Size of ' + db_name() + ' LOG is ' +
CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' +
CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB'
FROM sysfiles
WHERE name = @LogicalFileName
CREATE TABLE DummyTrans(DummyColumn char (8000) not null)
DECLARE @Counter INT,
@StartTime DATETIME,
@TruncLog VARCHAR(255)
SELECT @StartTime = GETDATE(),
@TruncLog = 'BACKUP LOG ' + db_name() + ' WITH TRUNCATE_ONLY'
DBCC SHRINKFILE (@LogicalFileName, @NewSize)
EXEC (@TruncLog)
-- Wrap the log if necessary.
WHILE @MaxMinutes > DATEDIFF (mi, @StartTime, GETDATE()) -- time
AND @OriginalSize = (SELECT size FROM sysfiles WHERE name =
@LogicalFileName) AND (@OriginalSize * 8 /1024) > @NewSize
BEGIN -- Outer loop.
SELECT @Counter = 0
WHILE ((@Counter < @OriginalSize / 16) AND (@Counter < 50000))
BEGIN -- update
INSERT DummyTrans VALUES ('Fill Log')
DELETE DummyTrans
SELECT @Counter = @Counter + 1
END
EXEC (@TruncLog)
END
SELECT 'Final Size of ' + db_name() + ' LOG is ' +
CONVERT(VARCHAR(30),size) + ' 8K pages or ' +
CONVERT(VARCHAR(30),(size*8/1024)) + 'MB'
FROM sysfiles
WHERE name = @LogicalFileName
DROP TABLE DummyTrans
SET NOCOUNT OFF

--把szwzcheck换成你数据库的名字即可,在查询分析器里面运行。

--收缩日志:企业管理器--所有任务--收缩数据库--文件--选日志文件收缩

分享到:
评论

相关推荐

    SQL SERVER 日志收缩工具

    SQL Server日志收缩工具是一种...总之,SQL Server日志收缩工具是一个实用的管理工具,能够帮助DBA有效地管理和优化日志文件,从而提高系统效率和资源利用率。正确使用和理解日志收缩是维护数据库健康的关键环节之一。

    SQL Server无法收缩日志文件的原因分析及解决办法

    而在简单恢复模式下,一旦事务被提交,其日志记录就会被清除,允许日志收缩。 3. **VLF(Virtual Log File)过多或过大**:VLF是日志文件的逻辑细分部分。如果VLF数量过多或单个VLF过大,可能会影响日志收缩。通常...

    SQL2008R2数据库日志太大收缩方法

    总结来说,收缩SQL Server 2008 R2数据库日志文件主要包括以下步骤:登录SSMS,更改恢复模式至“简单”,执行日志收缩,然后将恢复模式恢复为“完整”。这是一个有效的临时解决方案,但长期而言,定期执行数据库维护...

    SQL server日志收缩工具

    SQL Server日志收缩工具是一种专门针对Microsoft SQL Server数据库的日志管理实用程序,旨在优化和管理数据库日志文件的大小。在SQL Server中,事务日志是数据库引擎的关键组成部分,用于跟踪所有的更改操作,确保...

    MSsql日志收缩工具

    日志收缩的过程通常分为两步:首先,通过清除不再需要的事务日志记录,释放出已使用的日志空间;然后,将日志文件的实际大小调整到与实际使用相符的水平。需要注意的是,不恰当的日志收缩可能会导致数据丢失或恢复...

    sql server 2008 数据库日志收缩

    但需要注意的是,盲目地收缩日志文件可能会影响到数据库的性能和稳定性,因此在进行日志收缩之前,必须确保已经备份了相关的数据,并且了解了当前的恢复模式。 #### 四、SQL Server 2008 数据库日志收缩步骤 1. **...

    MSSQL数据库日志清理收缩工具

    1. **计划和时机**:清理和收缩日志应在数据库活动较低的时候进行,以避免影响正常业务。 2. **备份**:在清理日志前,确保有最新的数据库备份,以防意外丢失数据。 3. **恢复模式**:检查数据库的恢复模式,确保...

    微软MS SQL SERVER 日志收缩工具(2019重构版)支持sqlserver 2008及以后版本,trunc绿色版单文件。

    MS SQL Server日志收缩工具是款小巧好用的sql日志清理工具,主要就是帮助用户清除系统红无用的SQL日志文件,更具备了日志文件压缩功能,有需要的朋友快来下载。 重构版,兼容sqlserver 2008及以后版本,依旧是trunc...

    SQLServer数据库日志太大收缩操作指南

    在更改了恢复模式后,可以执行日志收缩操作。这可以通过T-SQL语句或SSMS的图形界面完成。例如,使用T-SQL收缩命令如下: ```sql DBCC SHRINKFILE (LogFileName, 0); ``` 这里的`LogFileName`是日志文件的逻辑名称...

    快速清除SQLServer日志的两种方法

    本文将详细介绍快速清除SQLServer日志的两种方法,包括清空日志和删除LOG文件,并且对每种方法进行了详细的解释和操作步骤。 清空日志 清空日志是快速清除SQLServer日志的第一种方法。这种方法可以通过使用DUMP ...

    SQL日志收缩工具.rar

    日志收缩虽然能够释放磁盘空间,但频繁的收缩可能会影响数据库性能,因此在实际使用中需要根据业务需求和数据库策略来合理安排。一般来说,建议在数据库活动低峰期进行收缩,同时保持定期的事务日志备份,以确保数据...

    SQL数据库日志清除工具

    5. 高级选项:可能包括选择截断类型(如只截断未检查点的事务、完全截断等),以及是否在截断后收缩日志文件以释放磁盘空间。 使用日志清除工具需要注意以下几点: 1. 在完全恢复模式下,不进行日志备份直接清除...

    非常实用的数据库日志清除代码

    这段代码首先声明了一个变量`@db`用于存储数据库名称,然后通过`DUMP TRANSACTION`命令清除数据库日志,接着使用`BACKUP LOG`命令备份并清除日志,最后通过`DBCC SHRINKDATABASE`命令收缩数据库,释放未使用的空间。...

    SQL Server 日志收缩工具

    7. **自动化脚本**:对于定期执行的日志收缩,工具可能支持创建和运行批处理脚本,以自动化维护任务。 在使用SQL Server日志收缩工具时,需要注意以下几点: - 不要频繁收缩日志,因为这可能导致日志文件的碎片化...

    镜像怎样收缩日志,详细步骤

    3. **设置日志恢复模式为简单**:简单恢复模式允许自动清除事务日志,但不保留事务日志的完整历史,这使得日志收缩成为可能。使用以下命令更改数据库的恢复模式: ```sql ALTER DATABASE CZPHC SET RECOVERY ...

    MS SQL SERVER日志收缩工具,效率非常高

    本文将深入探讨日志文件的管理和收缩,并介绍一个高效的日志收缩工具。 日志文件的大小通常由两个因素决定:一是数据库的事务量,二是日志重用策略。在高事务处理环境中,日志文件可能会迅速增长。如果事务被提交但...

    SqlServer日志清除专家

    2. **日志收缩**:通过收缩日志文件,可以有效地减少日志文件的大小,从而节省存储资源。这一步通常在完成日志备份后执行,以避免数据丢失。 3. **日志重置**:在某些情况下,可能需要重置日志,将数据库设置为简单...

    sql清除日志工具

    在使用任何SQL Server日志清除工具时,必须先了解数据库的恢复模型和当前的数据保护状态。错误的操作可能导致数据丢失或不可恢复的状态。因此,建议在进行日志清理前,先做好充分的备份,并理解清理过程可能带来的...

Global site tag (gtag.js) - Google Analytics