为什么事务要提交或者回滚?
在数据库上的任何写入操作,第一步就是写日志,如果在日志写完后停电了,下次重启mysql时,会自动把事务日志的记录同步到储存引擎中,这个叫事务提交。连日志都没写完的数据,数据库本身是不能恢复。
如果在日志没写完的情况下停电了,那么mysql重启时读取事务日志无法识别这个记录,那么它就会忽略这条记录并且从日志中撤销这个未写完的记录,这个叫事务的回滚。
参考:https://www.zhihu.com/question/35892120
在数据库上的任何写入操作,第一步就是写日志,如果在日志写完后停电了,下次重启mysql时,会自动把事务日志的记录同步到储存引擎中,这个叫事务提交。连日志都没写完的数据,数据库本身是不能恢复。
如果在日志没写完的情况下停电了,那么mysql重启时读取事务日志无法识别这个记录,那么它就会忽略这条记录并且从日志中撤销这个未写完的记录,这个叫事务的回滚。
参考:https://www.zhihu.com/question/35892120