Oracle COMMIT语句的处理顺序
Oracle COMMIT语句相信大家都有一定的了解,下面就为您介绍Oracle COMMIT语句的处理步骤,希望对您能有所帮助。
Oracle COMMIT语句处理顺序
当事务提交时,Oracle分配一个唯一的顺序号SCN(System Change Number)给事务。数据库恢复总是基于该SCN号来进行处理。SCN号是记录在控制文件、数据文件、块头及重做日志文件中。
1.Oracle COMMIT语句处理步骤:
Oracle 在下面情况提交事务:
发出一个COMMIT语句 | 执行DDL语句时 | 离开Oracle时
Oracle处理COMMIT的顺序是:
1)服务器为每个COMMIT产生一个SCN。使改变永久化;
2)LGWR进程将日志缓冲区数据并带有SCN一起写到重做日志文件;
3)服务器释放表级和行级锁;
4)用户被提示COMMIT完成;
5)服务器使事务已完成。
2. Oracle处理ROLLBACK的顺序是:
当下面情况发生时执行回滚:
发出ROLLBACK命令 l 服务器进程放弃地终止 l 会话被DBA终止
ROLLBACK 是对数据库的操作进行撤消,步骤有:
1)服务器进程不做任何的改变。
2)服务器释放表级和行级锁。
3) 服务器使事务已完成。