一、关于日志的基本知识:
在 SQL Server 2000 和 SQL Server 2005 中,每个数据库都至少包含一个数据文件和一个事务日志文件。SQL Server 在该数据文件中以物理方式存储数据。事务日志文件存储您对 SQL Server 数据库执行的所有修改的详细信息,以及执行每个修改的事务的详细信息。由于事务完整性被视为 SQL Server 的一个基本而固有的特点,因此不能在 SQL Server 中关闭对事务详细信息的记录。
(是不是说,日志是不可以被关闭的?证明一下:)
可以尝试一下,将日志自动增长关闭。然后执行一下操作:
1、修改现有表部分记录。 结果:可以修改,这个没问题,说明还有可用日志空间;
2、导入大批量数据。 结果:导入失败,错误信息如下:

“正在复制到 [temp].[dbo].[车次到站时间_20090107] (错误)
数据流任务: 数据插入操作的最终提交已开始。(SQL Server 导入和导出向导)错误 0xc0202009: 数据流任务: 出现 OLE DB 错误。错误代码: 0x80004005。已获得 OLE DB 记录。源:“Microsoft SQL Native Client” Hresult: 0x80004005 说明:“数据库 ‘temp’ 的事务日志已满。若要查明无法重用日志中的空间的原因,请参阅 sys.databases 中的 log_reuse_wait_desc 列。”。
信息 0x402090e0: 数据流任务: 数据插入操作的最终提交已结束。
错误 0xc0047022: 数据流任务: 组件“目标 - 车次到站时间_20090107”(73)的 ProcessInput 方法失败,错误代码为 0xC0202009。标识的这个组件从 ProcessInput 方法返回了一个错误。虽然该错误是此组件特有的,但却是致命的,将导致数据流任务停止运行。
错误 0xc0047021: 数据流任务: 线程“WorkThread0”已退出,错误代码为 0xC0202009。”

可以看出,数据导入操作实际上是做为一个事务来执行的。但是由于日志空间不够,所以无法存储提交操作,所以执行失败。

另外,如果日志空间关闭,你会发现数据导入速度超快。

以上从2可以看出,日志是不能够被关闭的,如果关闭,会导致数据库操作失败。如果日志关闭以后仍旧能操作,这种情况是可能的,应该仅限于小量数据操作。

二、当生成新表后,数据库会分配新的空间。此时如果删除该表,发现数据库空间没有立即被释放出来。这是为什么呢?
sql server既然已经为数据库分配了空间,即使你现在删除了一个表,并不会立即释放空间的。但是如果接着导入新的数据,发现新的数据并没有分配新的空间,而是利用上一次删除留下的空间。想想这么做有什么好处呢?(防止碎片过多?防止重复申请?)

当然如果删除表以后,希望立即释放空间,可以收缩数据库。

三、收缩数据库和收缩文件的区别:
收缩数据库,是收缩所有文件;收缩文件,则可以选择收缩哪个文件(数据文件 or 日志文件)

四、当日志文件过大时,如果删除或减少日志所占空间。
方法1、当然收缩日志是一个方法。但是往往释放的空间有限。
方法2、
(1).清空日志
DUMP TRANSACTION 库名 WITH NO_LOG

(2).截断事务日志:
BACKUP LOG 库名 WITH NO_LOG

(3).收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器–右键你要压缩的数据库–所有任务–收缩数据库–收缩文件
–选择日志文件–在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
–选择数据文件–在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了

也可以用SQL语句来完成
–收缩数据库
DBCC SHRINKDATABASE(库名)

–收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles
DBCC SHRINKFILE(1)

方法3、a.分离数据库:
企业管理器–服务器–数据库–右键–分离数据库

b.在我的电脑中删除LOG文件

c.附加数据库:
企业管理器–服务器–数据库–右键–附加数据库

转载于:https://www.cnblogs.com/peijihui/archive/2009/11/20/1606855.html

sql server日志占用空间过大的问题清理日志文件相关推荐

  1. SQL Server实例的十大安全注意事项

    SQL Server is one of the world's leading data platforms. It is being broadly used hosting millions o ...

  2. 一张图解释SQL Server集群、镜像、复制、日志传送

    一张图解释SQL Server集群.镜像.复制.日志传送 本文版权归作者所有,未经作者同意不得转载.

  3. mdf ldf 转mysql_如何將sql server 的.mdf和.ldf 數據備份文件導入到mysql數據庫中?

    示例 下面的示例將 pubs 中的兩個文件附加到當前服務器. EXEC sp_attach_db @dbname = N'pubs', @filename1 = N'c:\Program Files\ ...

  4. sql server日志占用空间过大的问题

    一.关于日志的基本知识:     在 SQL Server 2000 和 SQL Server 2005 中,每个数据库都至少包含一个数据文件和一个事务日志文件.SQL Server 在该数据文件中以 ...

  5. 保护SQL Server数据库的十大绝招

    1. 安装最新的服务包 为了提高服务器安全性,最有效的一个方法就是升级到SQL Server 2000 Service Pack 3a (SP3a).另外,您还应该安装所有已发布的安全更新.  2.  ...

  6. c语言 日志滚动 大小,Logrotate 日志滚动 解决日志占用空间过大

    起因 前几天发现自己的博客没有办法登录了,每次输完密码登录完都会重新跳回登录界面.一开始是怀疑登录的session出了什么问题,因为浏览器开隐身模式后就能登录进去.然而开隐身模式进后台的时候又会出现4 ...

  7. SQL Server 数据库完整备份不只是备份数据还有日志

    以前认为SQLServer完整备份只是备份数据库的数据而不包含日志,其实这是错误的.使用RESTOREHEADERONLY可以帮我们验证(msdb.dbo.backupset也包含相应的信息). RE ...

  8. SQL Server跟踪(Trace)--慢查询跟踪跟踪日志

    前言 如果缺省跟踪信息打开,它将在SQL Server启动时自动记录SQL Server启动信息.该功能犹如飞机的黑匣子,会记录一个SQL Server实例配置信息的所有改动.查看该信息,可以看出故障 ...

  9. 解决Docker容器日志占用空间过大

    目录 问题描述 查看容器日志大小 解决方案 脚本方案(不推荐) 针对单个容器方案 针对全局容器方案 注意 问题描述 docker容器日志导致主机磁盘空间满了.docker logs -f contai ...

最新文章

  1. mysql配置参数调优(8GB内存和64GB内存)
  2. 非极大值抑制(Non-maximum suppression)在物体检测领域的应用
  3. Struts2_模块包含 及Action总结
  4. java方法报错_.setUndecorated 方法报错
  5. python 获取向上两级路径_Python学习第171课--相对路径和绝对路径
  6. Oracle 或关闭中国研发中心(CDC):裁员 1600 人
  7. 一步一步手写实现实时监测物体YOLO v3 EASY METHOD | OpenCV Python CNN卷积神经网络
  8. 计算机网络:数据链路层(2):MAC协议
  9. 英特尔cpu发布时间表_2014英特尔处理器发布时间表
  10. 人工智能帮你文字转为Logo | 机器学习
  11. git公钥私钥及密码说明
  12. Windows Docker Desktop 无法启动报错 Docker Desktop is shutting down 的可能解决办法
  13. 如何理解处理器、CPU、多处理器、内核、多核?
  14. Qt笔记(四十)之Qt打开笔记本摄像头
  15. 过去一年,网易新闻是如何甩开对手的?
  16. maven archetype 自定义
  17. Frontend 当前前端的三种渲染方式
  18. linux的firewall火墙管理
  19. 翻页时钟Fliqlo不显示时间
  20. 日程信息管理系统设计与实现C 语言论文,C课设个人日程管理系统.docx

热门文章

  1. 数据库应用——MySQL基础知识和操作数据库
  2. Word中设置所有西文字体为新罗马
  3. 查看nginx服务器状态
  4. STM32直流减速电机控制篇(一)PWM调速
  5. Apache POI 插入图片至 Excel 的两种方法
  6. 多线程与并发 - Java 8 CompletableFuture 异步多线程
  7. 目前流行的个人台式计算机属于,[目前个人计算机的主要机型.doc
  8. 备份还原数据数据库(固定IP版)
  9. 中国人工智能行业市场供需与战略研究报告
  10. java 16进制字符转10进制_java 16进制字符串怎么转换成10进制字符串