事务:用户定义的一个数据库操作序列 要么全做 要么全不做 是一个不可分割的工作单位
事务通常以 begin transaction 开始 以 commit rollback 结束
commit 事务提交
rollback 事务回滚 回到事务开始之前的状态
事务的ACID特性:
A Atomicity 原子性 事务数据库逻辑工作单位 要么都做 要么都不做
C Consistency 一致性 从一个一致性状态 装换 到 另一个 一致性状态
I Isolation 隔离性 一个事务的执行不受干扰 执行各个事务之间互不干扰
D Durability 持续性 也叫永久性 事务一旦提交 对数据库的改变是永久性的 操作故障 不影响
故障的种类:
事务内部故障:可以通过程序本身发现 非预期 不能由事务程序处理 UNDO事务撤销
系统故障(软故障):系统停止运转 使得系统重启 CPU故障 操作系统故障 DBMS代码 断电
REDO 重做 已经提交的事务 UNDO 未提交的事务
介质故障(硬故障):磁盘 磁头 瞬间强磁干扰 可能性小 破坏最大
计算机病毒:认为故障
恢复概括:冗余
建立冗余数据:数据转储 登记日志文件(通常一起使用)