首页 > 解决方案 > 大数据传输时如何避免增加ldf?

问题描述

我正在使用笔记本电脑进行学习。

我有一张有 1.5 亿条记录的表。

我必须将这些记录插入到另一个表中。

在大约 2 小时后执行此过程时,我收到了 150GB 硬盘完整通知。

当我检查创建的文件时,我看到 .ldf 大小约为 120GB,而 .mdf 文件大小约为 30GB

我google了一下,发现ldf是事务日志。

在插入过程中如何阻止该文件创建或清空它?

标签: sql-server

解决方案


您可以考虑以下选项来减少日志文件增长:

  • 你可以去 SELECT * INTO 加载到另一个表。这是最少记录的操作。
  • 如果可能,您可以将恢复模式更改为简单以减少生成的日志量

或者,如果您想将恢复模式保持为完整,想从当前场景中恢复,那么您可以执行以下操作来释放空间:

  1. 备份日志以释放日志文件大小。更安全的方法,万一下一步完全备份出现问题,您可以从日志备份和上次可用的完全备份中恢复。
  2. 对数据库进行完整备份。
  3. 对数据库进行完整备份后,您可以删除在第 1 步中进行的日志备份。1

推荐阅读