sql-server - 大数据传输时如何避免增加ldf?
问题描述
我正在使用笔记本电脑进行学习。
我有一张有 1.5 亿条记录的表。
我必须将这些记录插入到另一个表中。
在大约 2 小时后执行此过程时,我收到了 150GB 硬盘完整通知。
当我检查创建的文件时,我看到 .ldf 大小约为 120GB,而 .mdf 文件大小约为 30GB
我google了一下,发现ldf是事务日志。
在插入过程中如何阻止该文件创建或清空它?
解决方案
您可以考虑以下选项来减少日志文件增长:
- 你可以去 SELECT * INTO 加载到另一个表。这是最少记录的操作。
- 如果可能,您可以将恢复模式更改为简单以减少生成的日志量
或者,如果您想将恢复模式保持为完整,想从当前场景中恢复,那么您可以执行以下操作来释放空间:
- 备份日志以释放日志文件大小。更安全的方法,万一下一步完全备份出现问题,您可以从日志备份和上次可用的完全备份中恢复。
- 对数据库进行完整备份。
- 对数据库进行完整备份后,您可以删除在第 1 步中进行的日志备份。1
推荐阅读
- algorithm - 将 DAG 转换为二叉树
- php - TYPO3:自动允许一个BE用户组编辑一个分机的所有CE?
- plot - 绘制数据的在线平台?
- rest - 如何在 Dspace rest api 调用中使用 OR 运算符
- python - predict() 得到了一个意外的关键字参数 'stats'
- excel - 如何将x和y坐标转换为excel中的热图?
- javascript - 加载 XML、应用 XSL 并附加到现有的 HTML 页面
- r - Rvest mailto 与python - 如何将 python 文件集成到 Django 项目中?
- pandas - 合并熊猫数据框中的列表