首页 > 技术文章 > 事务日志的必要性

terrence 2015-10-09 19:00 原文

为什么我们需要事务日志,可不可以删除或者不添加日志文件?答案是否定的,如果没有事务日志,你的数据库根本无法工作!

事务日志支持以下操作:

恢复个别的事务

如果用户或程序使用了Rollback 语句或者是数据库检测到了失败的操作 。 这些日志文件就会被用来做回滚。

在 SQL Server 启动时恢复所有未完成的事务

如果你在数据库发生错误时重新启动数据库服务器(服务),可能发现数据库处于恢复模式(In Recovery),这表明数据库正在回滚服务器(服务)重启之前未完成的事务,或者是继续执行那些已经写入到了日志文件却没有写入数据文件的事务。如果你在restore数据库的时候使用了WITH RECOVERY,也可以看到数据库处于恢复模式。

image

将还原的数据库、文件、文件组或页前滚至故障点

如果SQL Server 出现了错误,而你需要恢复到发生错误之前的数据,你可以实现它只要你选择了FULL recovery模式。你只要拿到一个之前完整的备份,然后查到当前的差异以及后续的事务日志到发生错误的地方。后面将会做详细的介绍。

支持高可用性和灾难恢复解决方案

AlwaysOn 可用性组、数据库镜像和日志传送。这个会在后面做详细介绍.

推荐阅读