什麼是事物,事物就是對mysql多條語句執行過程進行控制,有復原事物 标記復原事物 設定送出 等事物
*事物執行過程:
1.開始事物:start transaction;也标記着可以從這裡開始復原
2.标記 :savepoint exp;
3.復原标記: rollback to exp;
4.rollback;復原整個事物
5.送出事物:commit;
檢視送出狀态:show variables like 'autocommit'; on為開啟 off為關閉自動送出
設定送出:set @@autocommit =1;設定為自動送出
set @@autocommit=0;設定為手動送出;*
事物隔離級别:
*1.檢視目前會話隔離級别
select @@tx_isolation;
2.檢視系統目前隔離級别
select @@global.tx_isolation
3.設定目前會話隔離級别
set session transaction isolatin level repeatable read;
4.設定系統目前隔離級别
set global transaction isolation level repeatable read;*
事物隔離級别的四種狀态
1.read uncommitted 表示未送出讀,通過字面了解就是,别人沒有送出但是已經更改的資料你可以讀到
2..read committed 送出讀,别人送出的資料你可以讀到,讀到的資料可能不一樣。
3.repeatable read 預設隔離級别,可重複讀。
4.serializable:串行化 相當于你讀的時候就把表給加鎖了,隻能你自己讀完再開鎖
設定隔離級别
1.設定目前會話隔離級别
set session transaction isolatin level read uncommitted;
2.設定系統目前隔離級别
set global transaction isolation level read uncommitted;