`
youanyyou
  • 浏览: 197035 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

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

阅读更多

一、简单方法

1、右键数据库→属性→选项→故障还原模型→设为简单→确定;
2、右键数据库→所有任务→收缩数据库→确定;
3、右键数据库→属性→选项→故障还原模型→设为大容量日志记录→确定。
2010。09。24 我就是用的第一种简单方法,来给公司数据库日志减肥!

二、复杂方法

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)

4、为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行)
a.分离数据库
企业管理器--服务器--数据库--右键--分离数据库
b.在我的电脑中删除LOG文件
c.附加数据库
企业管理器--服务器--数据库--右键--附加数据库
此法将生成新的LOG,大小只有500多K

或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。
a.分离
EXEC sp_detach_db @dbname = 'pubs'
b.删除日志文件
c.再附加
EXEC sp_attach_single_file_db @dbname = 'pubs',@physname = 'c:\Program Files\Microsoft SQL

Server\MSSQL\Data\pubs.mdf'
5、为了以后能自动收缩,做如下设置
企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
--SQL语句设置方式:
EXEC sp_dboption '数据库名', 'autoshrink', 'TRUE'
6、如果想以后不让它日志增长得太大
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xM(x是你允许的最大数据文件大小)
--SQL语句的设置方式:
alter database 数据库名 modify file(name=逻辑文件名,maxsize=20)

特别注意:

请按步骤进行,未进行前面的步骤,请不要做后面的步骤,否则可能损坏你的数据库。
一般不建议做第4、6两步,第4步不安全,有可能损坏数据库或丢失数据,第6步如果日志达到上限,则以后的数据

库处理会失败,在清理日志后才能恢复。

-----------------------------------------------------------------------------------------------------------------------------------

日志文件满而造成SQL数据库无法写入文件时,可用两种方法:
一种方法:清空日志。
1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2.再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。

另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。
1: 删除LOG
分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K。

注意:建议使用第一种方法。

如果以后,不想要它变大。
SQL2000下使用:
在数据库上点右键->属性->选项->故障恢复-模型-选择-简单模型。
或用SQL语句:
alter database 数据库名 set recovery simple

深圳人才网 深圳招聘网 深圳人才招聘网 深圳人才大市场 

企业、个人免费注册,获取想要的 深圳 软件工程师招聘信息 月薪最低3000-8000,更有高端猎头职位! 

www.szrcwz.com                                                                                                                                           

                  Google 提供的广告

1
0
分享到:
评论

相关推荐

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

    面对SQL数据库日志已满的问题,我们可以采取多种方式来解决。具体操作时需要根据实际情况选择合适的方法,并且要注意数据的安全性和系统的稳定性。同时,合理规划日志文件管理和备份策略也是非常重要的一部分,能够...

    如何解决SQL Server日志满问题

    解决 SQL Server 日志满问题的多种方法 SQL Server 是一种关系数据库管理系统,广泛应用于企业级应用中。但是,随着数据的增长,...无论选择哪种方法,都是为了解决 SQL Server 日志满问题,提高数据库性能和稳定性。

    SQL数据库日志清理工具

    综上所述,SQL数据库日志清理工具是管理和优化数据库性能的关键工具,通过有效的日志管理,可以提高系统效率,避免磁盘空间问题,同时保证数据的安全性和完整性。使用这样的工具,需要理解其工作原理,并遵循正确的...

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

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

    解决SQL数据库程序挂起问题

    标题中的“解决SQL数据库程序挂起问题”是一个典型的IT故障排查和修复场景,涉及到SQL数据库的运行状态和系统性能优化。挂起通常意味着程序或进程处于非响应状态,可能由于资源耗尽、死锁、错误的查询执行计划、内存...

    SQL数据库日志清除工具

    "SQL数据库日志清除工具"就是为了解决这一问题而设计的。 日志清除,也被称为日志截断,是减少日志文件大小的一种方法。在SQL Server中,主要有两种类型的日志清除:常规日志清除和完全恢复模式下的日志清除。 1. ...

    sql server数据库日志满的处理方法

    在IT领域,尤其是在数据库管理与维护中,SQL Server数据库日志满的问题是常见的技术挑战之一。...通过以上方法的综合运用,可以有效解决SQL Server数据库日志满的问题,保障数据库系统的稳定运行和高效性能。

    清空sql数据库日志文件

    ### 清空SQL数据库日志文件 在数据库管理与维护过程中,日志文件管理是非常重要的一个环节。数据库的日志文件(Log File)主要用于记录数据库的所有事务操作,这对于故障恢复至关重要。然而,在某些情况下,比如...

    SQL数据库日志已满解决方法

    当前的解决方法是:把硬盘上的其他... 在查询分析器上操作: 清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 截断事务日志: BACKUP LOG 数据库名 WITH NO_LOG 解决SQL数据库日志已满的问题 1、右键数据库→属性→选项→

    SQL数据库置疑解决-问题集锦

    SQL数据库置疑解决方案(原因分析、预防措施、修复方法)附图.doc文档可能提供了详细的图文解析,包括如何识别问题、分析日志和诊断原因。 针对“置疑”状态,首先需要了解数据库的相关命令。SQL数据库置疑-相关命令...

    SQL数据库日志收缩工具

    SQL数据库日志收缩工具是一种专为管理SQL Server数据库日志文件大小而设计的应用程序。在SQL Server中,日志文件(.ldf)用于记录所有事务的修改历史,包括INSERT、UPDATE、DELETE操作以及数据库的任何其他更改。...

    sql数据库日志清理工具

    这时,"sql数据库日志清理工具"就显得尤为重要。 这个专业工具专门设计用于清理SQL数据库的日志,以优化存储资源,提高系统运行效率。它简化了日志清理过程,让用户能够快速便捷地完成这一繁琐的任务。在日常维护...

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

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

    sqlserver清理数据库日志

    "SQL Server 清理数据库日志" SQL Server 中的数据库日志是记录数据库所有操作的日志文件,这些日志文件会不断增长,占用大量的磁盘空间。如果不定期清理这些日志文件,可能会导致磁盘空间不足,影响数据库性能。...

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

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

    SQL数据库可疑处理

    SQL数据库可疑处理 SQL Server 数据库可疑处理是数据库管理员经常遇到的一个问题。本文将详细介绍解决 SQL Server 数据库可疑的步骤和解决方案。 SQL Server 数据库可疑的原因 SQL Server 数据库可疑可能是由于...

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

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

    sql server 2000数据库日志清楚工具

    "SQL Server 2000数据库日志清楚工具"就是为了解决这一问题而设计的小型应用程序,它能够帮助管理员快速有效地清理数据库的日志文件,从而释放磁盘空间,提高系统性能。 事务日志是SQL Server用来记录所有事务的...

    数据库tempdb的日志已满

    “数据库tempdb的日志已满”是SQL Server运行过程中一个常见且需要及时处理的问题。通过理解其背后的原因、影响以及采取适当的解决策略,可以有效避免因tempdb日志空间不足而导致的数据库性能下降和服务中断。在日常...

Global site tag (gtag.js) - Google Analytics