天天看點

mysql事務

mysql事務;

事務:一組原子性的SQL查詢,或者說一個單獨工作單元

ACID測試:

A:atomicity,原子性:整個事務中的所有操作要麼全部成功執行,要麼全部失敗後復原。

C:consistency,一緻性:資料庫總是從一個一緻性狀态轉換成另一個一緻性狀态;

I:Isolation,隔離性;一個事務所做出的操作在送出之前,是不能為其它所見;

D:durability:持久性,一旦事務送出,其所做的修改會永久儲存在資料庫中;

事務:

啟動事務,START TRANSACTION

結束事務:

1.COMMIT

2.ROLLBACK

建議:顯示請求和送出事務,而不要使用自動送出功能

autocommit 0

3.事務支援savepoint

SAVEPOINT identifier

ROLLBACK [WORK] TO [SAVEPOINT] identifier

RELEASE SAVEPOINT identifier

4.事務隔離級别:

show global variables like 'tx_%';

READ-UNCOMMITED(讀未送出):可以讀取另一個會話還未送出的更改

READ-COMMITED(讀送出):另一個會話送出後,才能讀取到對方送出的内容

REPEATABLE-READ(可重讀):另一個會話不管送出與否,在自己送出之前隻能讀取之前的資料。

SERIALIZABILE(可串行化):自己未送出,對方對相應資料進行修改會被阻塞。

     本文轉自阿倫艾弗森 51CTO部落格,原文連結:http://blog.51cto.com/perper/2055545,如需轉載請自行聯系原作者