首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有一个92 Is的.mdf和一个58 Is的.ldf可以吗?如何管理日志以保持正常运行?

有一个92 Is的.mdf和一个58 Is的.ldf可以吗?如何管理日志以保持正常运行?
EN

Server Fault用户
提问于 2011-03-01 16:42:49
回答 3查看 162关注 0票数 1

我的工作是整理用于历史记录的表格,并进行日志记录以保持其整洁。我想确保我不会忽视日志文件。

如何以及我应该做些什么来控制日志文件?

我在夜间计划中运行的SQL脚本是:

代码语言:javascript
复制
declare @DBname varchar(500)
set @DBname = 'E:\Database\backup\PMIS_backup_' +
    convert(varchar(MAX), getdate(), 23 ) +'.bak'

BACKUP DATABASE [PMIS] TO DISK = @DBname
    WITH NOFORMAT, NOINIT, NAME = @DBname, SKIP, REWIND, NOUNLOAD, STATS = 10

数据库处于简单恢复模式。

EN

回答 3

Server Fault用户

回答已采纳

发布于 2011-03-01 19:25:06

如果数据库处于简单恢复模式,并且日志文件没有逐渐变大,那么我就不用担心它了。如果有任何类型的维护计划定期进行大量的重新索引,那么很可能就需要这么大的维护计划。

如果日志文件确实变大了,您会想知道原因。您可以运行DBCC (LOGSPACE)来查看日志文件中使用了多少日志文件--如果日志文件始终很高,那么请检查master.sys.databases中的master.sys.databases列,以了解为什么它没有像预期的那样重用空间。如果使用率很低,那么可能有一些一次性的事务做了大量的工作,导致日志文件增长。如果这是一个经常发生的事务,那么反复缩小和增长日志文件只会损害性能,所以不管大小如何,都可以提供舒适的工作空间。另一方面,如果日志文件的大小是数据文件的许多倍,那么这可能是不必要的。

票数 3
EN

Server Fault用户

发布于 2011-03-01 16:58:52

您正在进行事务日志备份吗?每次成功时,SQL都会从日志中清除不活动的事务,这本身可能会使事务日志文件大小可管理。

票数 2
EN

Server Fault用户

发布于 2011-03-01 17:36:00

在执行日志文件的备份之后,需要收缩日志文件。

每次从表中删除记录时,都要从数据文件中删除teh数据,但是该操作会被记录在日志文件中(因此有名称;-)。

当数据库配置为完全恢复模型时,日志文件也会被无休止地追加,直到备份为止。有关更多信息,请访问MSDN:事务日志物理架构

另外,如果您没有执行常规的事务日志备份(大概是因为您不需要时间点恢复),那么应该考虑使用一个简单的恢复模型。当然,您应该先备份和收缩日志文件,然后将数据库的恢复模型更改为simple。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/241800

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档