有谁知道如果在长sql事务期间关闭了microsoft sql server的电源会发生什么? db会自动回滚未完成的事务吗?
由于
答案 0 :(得分:1)
实际的数据提交永远不会被执行,因此数据不一致没有问题。一旦服务器重新启动,就会发生回滚而不是提交。
答案 1 :(得分:0)
https://technet.microsoft.com/en-us/library/ms191455%28v=sql.105%29.aspx
在重做阶段向前滚动所有日志事务后,a 数据库通常包含由事务所做的更改 在恢复点未提交。这使得前滚数据成为可能 交易不一致。 恢复过程打开了 事务日志以标识未提交的事务。未提交 通过回滚来撤消事务,除非它们持有锁 阻止其他事务以事务方式查看 不一致的数据。这一步称为撤消(或回滚)阶段。 如果数据在开始时已经在事务上保持一致 恢复过程,跳过撤消阶段。数据库之后 事务一致,恢复使数据库在线。后 已恢复一个或多个备份,恢复通常包括 重做和撤消阶段。每个完整和差异备份 包含足够的事务日志记录以允许其中的数据 备份恢复到自洽状态。