如何在 SQL Server 2008 中禁用事务日志
在 SQL Server 2008 中,有什么方法可以禁用事务日志或清除日志文件吗?
当我在项目中执行一个查询时(就事务而言非常大),此时该日志文件的大小将增加(2 到 3 GB)。
请给我推荐一些好的选择。
In SQL Server 2008 is there any way to disable transaction log or clear log file?
When I execute one query in my project (very large in terms of transaction) a that time this log file's size will goring to increase (2 to 3 GB).
Please suggest me some good option.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您无法禁用 SQL Server 中的事务日志。决不。
您可以切换到简单恢复模型,
这将减少日志记录 - 但事务日志是 SQL Server 中的基本核心概念,您不能将其关闭。
You cannot disable the transaction log in SQL Server. No way.
You can switch to simple recovery model
which will log less - but the transaction log is such a fundamental, core concept in SQL Server, you cannot just turn that off.
您可以缩小它
但是它只适用于简单恢复模型,相反您必须备份日志并随后缩小它
您根本无法删除日志文件即使数据库处于只读模式。
并且在处理 sql server 的数据库时尝试重新设计和审查您的方法。缩小文件不是正确的选择或最佳实践 - 尤其是定期缩小文件!
You may shrink it
BUT it only works with Simple recovery model, instead you have to back the log up and shrink it afterwards
You cannot drop the log files at all even if your database is in read-only mode.
AND try to redesign and review your approach when dealing with sql server's DB. It is not the right option or best practice to shrink files - especially on regular basis!
您无法禁用事务日志。
如果您的日志需要大于 3GB,那就这样吧。如果你缩小它,它就会再次增长并导致其他问题。
如果是一次性的,您可以通过
You can't disable the transaction log.
If your log needs to be 3GB larger, then so be it. If you shrink it, then it will just grow again and cause other problems.
If it's one off, you can mitigate growth by
将恢复模型更改为:
simple
并运行
但是从哪里获取日志名称?
change the recovery model to :
simple
and run
But from where do you get the log name ?