gpt4 book ai didi

sql-server - Microsoft SQL Server - 事务日志已满是什么意思?

转载 作者:行者123 更新时间:2023-12-04 01:31:36 24 4
gpt4 key购买 nike

事务日志已满是什么意思?我将文件设置为在需要时增长 20%。我的驱动器上还剩 4GB。如何永久解决此问题?
运行这些命令可以暂时解决问题:

DBCC SHRINKFILE('MyDatabase_log', 1)
使用 TRUNCATE_ONLY 备份日志 MyDatabase
DBCC SHRINKFILE('MyDatabase_log', 1)

最佳答案

事务日志是 SQL 服务器“记录”它所做的每一个更改的地方,以便如果出现问题(从软件崩溃到电源故障,再到小行星撞击……也许不是小行星撞击),它可以“恢复”通过“撤消”它所做的所有更改,自上次一致的“检查点”以来 - 回到数据库的最后“一致”状态......在那个检查点。每次事务完成(或“提交”)时,所有已存储在事务日志中的更改都被标记为“确定”,并且允许将 CheckPopint 标记移到这些更改之后,以便将来恢复只会在此之后的某个时间点“撤消”更改。发生这种情况后,检查点之前的事务日志中的所有条目都不再需要从系统崩溃中恢复……但它们仍然可能需要从硬盘崩溃中恢复,所以……

正如另一位先生所提到的,您在服务器上设置的“恢复模型”控制检查点之前事务日志条目发生的情况。在简单模式下,它们会在检查点发生时被删除,但如果主数据磁盘崩溃,您将面临风险,因为您的事务日志将不包含自上次备份以来写入磁盘的更改。

在其他恢复模型中,事务日志条目在您执行备份之前不会被删除,从而保护您免受此风险...

因此,一般来说,发生此问题时,是因为服务器处于设置的“正常”(非简单)恢复模型之一(增量或完整)中,并且它们没有进行备份...。在这种情况下,事务日志只是不断增长......,并且不断增长......有点像电视上的那些前列腺广告......

关于sql-server - Microsoft SQL Server - 事务日志已满是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/302310/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com