`
foxxiao
  • 浏览: 107228 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

数据库 的日志已满,备份该数据库的事务日志以释放一些日志空间的解决办法

阅读更多

数据库 'yoursitedb' 的日志已满。请备份该数据库的事务日志以释放一些日志空间。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 数据库 'yoursite' 的日志已满。请备份该数据库的事务日志以释放一些日志空间。

源错误:

[没有相关的源行]


源文件: c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\72899b79\f8dff11c\App_Web_uff-9q5u.28.cs    行:

 

可能引起的原因是:统计,排序这类操作太多了,太频繁了。   解决办法:还是要优化语句。  

在tempdb库属性中,在[企业管理器]中把[事务日志]的 [文件属性] 中的 [文件自动增长] 前面打上钩,并且查看一下你的日志文件所在磁盘空间够不够了。如果不够,备份后换个地方存
[注:tempdb你数据库名称。]

1.清空日志
 DUMP  TRANSACTION  库名  WITH  NO_LOG    

2.收缩数据库文件(如果不压缩,数据库的文件不会减小
 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
  --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
  --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
先提供一种复杂的方法压缩日志及数据库文件如下: 1.清空日志
  DUMP TRANSACTION 库名 WITH NO_LOG
2.截断事务日志:
  BACKUP LOG 数据库名 WITH NO_LOG
3.收缩数据库文件(如果不压缩,数据库的文件不会减小
  企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
  --选择日志文件--在收缩方式里选择收缩至天天上网M,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
  --选择数据文件--在收缩方式里选择收缩至天天上网M,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
  也可以用SQL语句来完成
  --收缩数据库
  DBCC SHRINKDATABASE(客户资料)
  --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles
  DBCC SHRINKFILE(1)
4.为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行)
  a.分离数据库:
  企业管理器--服务器--数据库--右键--分离数据库
  b.在我的电脑中删除LOG文件
  c.附加数据库:
  企业管理器--服务器--数据库--右键--附加数据库
  此法将生成新的LOG,大小只有500多K
  或用代码:
  下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。
  a.分离
  E X E C sp_detach_db @dbname = ’pubs‘
  b.删除日志文件
  c.再附加
  E X E C sp_attach_single_file_db @dbname = ‘pubs’,
  @physname = ’c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf‘
5.为了以后能自动收缩,做如下设置:
  企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
  --SQL语句设置方式:
  E X E C sp_dboption ’数据库名‘, ’autoshrink‘, ’TRUE‘
6.如果想以后不让它日志增长得太大
  企业管理器--服务器--右键数据库--属性--事务日志
  --将文件增长限制为xM(x是你允许的最大数据文件大小)
  --SQL语句的设置方式:
  alter database 数据库名 modify file(name=逻辑文件名,maxsize=20)
特别注意:
  请按步骤进行,未进行前面的步骤,请不要做后面的步骤
  否则可能损坏你的数据库.
  一般不建议做第4,6两步
  第4步不安全,有可能损坏数据库或丢失数据
  第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复.

另外提供一种更简单的方法,本人屡试不爽,建议大家使用。
更简单的方法:
1。右建数据库属性窗口--故障还原模型--设为简单
2。右建数据库所有任务--收缩数据库
3。右建数据库属性窗口--故障还原模型--设为大容量日志记录

<script type="text/javascript"></script>

分享到:
评论

相关推荐

    SqlServer数据库提示 “tempdb” 的日志已满 问题解决方案

    请备份该数据库的事务日志以释放一些日志空间。 网上找了下解决方案,大体是扩大临时库的日志文件的大小解决的 解决过程: 查看了下数据库的属性,是自动增长,不指定文件大小上限。 在网上Google了很久,试了些...

    解决SQL数据库日志已满的问题

    在SQL Server中,数据库日志已满的问题是一个常见的问题,主要由于事务日志空间不足导致。日志文件用于记录所有数据库事务,确保数据的一致性和可恢复性。当日志文件达到其最大大小且未被清除或收缩时,可能会阻碍...

    sql数据库日志已满的解决办法

    ### SQL数据库日志已满的解决办法 在日常的数据库管理工作中,经常会遇到SQL数据库的日志文件因存储空间不足而无法继续写入的情况,这通常会导致数据库操作异常甚至停止服务。本文将详细介绍当SQL数据库日志已满时...

    数据库tempdb的日志已满

    当tempdb的日志空间不足时,数据库会抛出错误提示“数据库tempdb的日志已满”,这通常意味着tempdb的日志文件大小达到了上限,无法继续记录新的事务日志信息。 ### 二、问题原因 1. **事务日志溢出**:tempdb中的...

    sqlserver事务日志已满解决办法.docx

    "SQL Server 事务日志已满解决办法" SQL Server事务日志是数据库中一个非常重要的组件,它记录了数据库中的所有事务操作,包括插入、更新、删除等操作。然而,在实际使用中,事务日志可能会出现满的问题,从而影响...

    MSSQL_server数据库日志满的快速解决办法

    ### MSSQL Server数据库日志满的快速解决办法 在日常的数据库管理工作中,经常会遇到MSSQL Server数据库日志空间不足的问题。这不仅会影响到数据库性能,严重时还可能导致数据库不可用。本文将详细介绍几种常见的...

    数据库日志已满

    标题“数据库日志已满”通常指的是在使用关系型数据库管理系统(RDBMS)时,数据库的日志文件(如SQL Server的 transaction log 或 MySQL 的 binlog)已经达到了其最大容量,无法再记录新的事务操作。这可能会导致...

    SQL 数据库2014 数据库事务日志截断配置

    ### SQL 数据库2014 数据库事务日志截断配置 #### 一、SQL数据库事务日志收缩 ##### 1.1 登陆SQL01数据库管理工具,将HA可用性组属性的备份首选项设置为-主副本 在进行事务日志收缩之前,首先需要确保SQL Server...

    AlwayOn集群数据库日志清理教程.doc

    在 AlwaysOn 集群环境中,数据库日志文件的疯狂扩张是一个常见的问题,该问题不仅占用大量的存储空间,还可能会影响数据库的性能和稳定性。因此,周期性的清理数据库日志文件是非常必要的。本教程将对 AlwaysOn 集群...

    MSSQL数据库日志清理和备份工具.rar

    在MSSQL中,事务日志用于记录所有数据库的更改操作,随着时间的推移,日志文件可能会迅速增长,占用大量磁盘空间。因此,定期清理日志是必要的。清理日志通常通过两种方式实现:一是使用T-SQL语句TRUNCATE LOG或...

    MSSQL数据库日志满的快速解决办法

    标题中的“MSSQL数据库日志满的快速解决办法”是指在Microsoft SQL Server数据库系统中,当事务日志文件(LDF)的空间被填满时,如何有效地清理和压缩日志,以释放空间并避免数据库运行问题。描述中提供了一种相对...

    SQL数据库日志清理工具

    3. **事务日志截断**:这是清理过程的核心,通过TRUNCATE LOG或BACKUP LOG WITH NORECOVERY命令,可以释放已完成的事务所占用的日志空间。 4. **重新组织数据库**:有时,清理后可能需要执行DBCC SHRINKFILE或ALTER...

    SQL数据库日志清除工具

    只有当日志备份完成后,系统才会截断日志,删除已完成的事务日志部分。 SQL数据库日志清除工具通常具备以下功能: 1. 自动或手动日志截断:用户可以设定定期清理日志的计划,或者根据需要手动触发清理。 2. 监控...

    K3数据库日志文件过大分析及解决方案

    在IT领域,数据库管理是至关重要的,特别是当面临如“K3数据库日志文件过大”这样的问题时。本文档专门针对使用SQL Server 2000和2005作为数据库系统的金蝶K/3系统,详细分析了日志文件过大导致备份失败的问题,并...

    K3数据库日志收缩工具.zip

    1. 日志清理:该工具可以删除已完成的事务日志,只保留必要的部分,以减小日志文件的大小。 2. 数据库整理:通过重新组织数据库的物理结构,提高数据访问效率。 3. 安全收缩:在收缩过程中,确保不丢失任何重要信息...

    数据库日志收缩工具

    然而,随着时间的推移,数据库日志文件(通常命名为ldf文件)可能会不断增长,占用大量的磁盘空间,这可能对系统的性能和存储管理造成影响。此时,就需要使用到"数据库日志收缩"工具来有效地管理和优化日志文件的...

    处理数据库日志过大问题

    以下是一些关于如何处理数据库日志过大的关键知识点: 1. **日志类型与功能**: - **事务日志**:在关系型数据库中,如SQL Server或MySQL,事务日志用于记录所有对数据库的更改操作,确保数据一致性并支持事务回滚...

    hana log日志空间占满处理.pdf

    当/hana/log卷已满且数据库无法启动时,问题可能是因为/hana/shared目录空间不足,导致备份日志无法正常备份。解决步骤包括: - 停止HANA数据库。 - 确认所有服务进程已停止。 - 查找并移动较大的在线日志文件到...

    收缩数据库日志文件

    在收缩数据库日志文件之前,需要备份数据库的事务日志,以免数据丢失。在收缩数据库日志文件时,需要按照步骤进行,以免损坏数据库。 知识点5:收缩数据库日志文件的应用场景 收缩数据库日志文件通常用于数据库...

    sqlserver还原备份数据库以及清理日志文件

    以上步骤介绍了如何在 SQL Server 2012 中进行数据库的备份与还原操作,以及如何清理事务日志文件以释放磁盘空间。这些操作对于维护数据库的稳定性和性能至关重要。通过定期执行备份,可以确保数据的安全性;而合理...

Global site tag (gtag.js) - Google Analytics