sql server 2008 日志文件已经到了最大值,还会记录日志吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 2008 日志文件已经到了最大值,还会记录日志吗相关的知识,希望对你有一定的参考价值。
假如一个数据库的日志文件最大设置为10G,现在这个日志文件已经增长到了10G。但是没有人处理它,这时 sql server 还会往日志文件里面写东西吗,是把他截断一部分腾出空间来写新日志,还是不再写日志。
再加一问,在备份数据库的时候能不能只备份数据文件,就想只备份log文件一样,如:backup log 。。。
消息 9002,级别 17,状态 4,第 1 行
数据库 'test' 的事务日志已满。若要查明无法重用日志中的空间的原因,
右击数据库-备份,里面有选择备份数据库还是文件和文件组的。 参考技术A 日志满了以后,会自动截断不活动的日志用来保存新的日志。说白了就是循环利用。
你追问的问题不太清楚,但是我们做备份的时候,通常会先收缩一下数据库追问
感觉你和上面那位回答的完全不一样啊 ,我自己去试验一下。
追问就是 假如我想只备份日志文件 可以用backup log 但是我想只备份数据文件不备份日志文件 ,这能做吗
这个我真不知道,以前我有听说过备份不会备份日志,但是没试验过,而且我们备份的时候都做了job,会事先收缩数据库,就是把日志文件清掉,所以没关注这个。
追问上面那位说的是对的,日志空间满了之后会报错的
你们做了job你可以看下job执行的脚本啊
SQL Server 2008 收缩日志 清空删除大日志文件
SQL2008 的收缩日志 由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消: (SQL2005) BackupLog DNName with no_log go dump transaction DNName with no_log go USE DNName DBCC SHRINKFILE (2) Go -------------------------------------------------------------- (SQL2008): 在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。 方案一:完全命令模式 USE[master] GO ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY SIMPLE --简单模式 GO USE DNName GO DBCC SHRINKFILE (N‘DNName_Log‘ , 11, TRUNCATEONLY) GO USE[master] GO ALTER DATABASE DNName SET RECOVERY FULLWITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY FULL --还原为完全模式 GO
以上是关于sql server 2008 日志文件已经到了最大值,还会记录日志吗的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server 2008 收缩日志 清空删除大日志文件