1. 程式人生 > 其它 >MySQL事務機制

MySQL事務機制

事務的ACID屬性

 原子性,一致性,隔離性,永續性

 事務的原子性:

  一個事務中所有的操作要麼全部完成,要麼全部失敗。事務執行後,不允許停留在中間某個狀態

 事務的一致性:

  不管在任何給定的時間、併發事務有多少,事務必須保證執行結果的一致性。

 事務的隔離性:

  隔離性要求事務不受其他併發事務的影響,如同在給定的時間內,該事務是資料庫唯一執行的事物。

 事務的永續性:

  事務一旦提交,結果便是永久性的。即便發生宕機,仍然可以依靠事務日誌完成資料的持久化。

#啟動事務
start transaction;
delete from t_emp; delete from t_dept;
select * from t_emp; select * from t_dept;
#提交事務
commit; #回滾事務 rollback;

事務的四個隔離級別

 

事務一

start transaction;
update t_emp set sal=1;

事務二

set session transaction isolation level read uncommitted;
start transaction;
select empno,ename,sal from t_emp;
commit;

事務二能夠讀取到事務一未提交的資料