事務(wù)操作分兩種:
使用事務(wù)的前提是 存儲(chǔ)引擎必須是InnoDB,BDB
自動(dòng)事務(wù)(默認(rèn))、手動(dòng)事務(wù)
手動(dòng)事務(wù)的操作流程
開啟事務(wù):start transaction;
進(jìn)行事務(wù)操作
關(guān)閉事務(wù)
提交事務(wù):commit; 同步數(shù)據(jù)表,表示操作成功
只要comit提交了,就不可以返回上一步的數(shù)據(jù)
回滾事務(wù):rollback; 直接清空日志表,表示操作失敗
事務(wù)操作原理:事務(wù)開啟之后望伦,所有的操作都會(huì)臨時(shí)保存到事務(wù)日志,而事務(wù)日志只有在得到commit命令才會(huì)同步到數(shù)據(jù)表,其他任何情況都會(huì)清空虱岂,比如rollback、斷電菠红、斷開連接
事務(wù)的操作游程:
自動(dòng)事務(wù)處理
show variables like 'autocommit';
關(guān)閉自動(dòng)提交:set autocommit=off/0;
當(dāng)進(jìn)入事務(wù)處理的時(shí)候第岖,commit會(huì)自動(dòng)變成手動(dòng)提交
事務(wù)的四大特性:ACID
A:Atomic,原子性 (不是成功就是失斒运荨)
C:Consistency蔑滓,一致性(實(shí)務(wù)操作中數(shù)據(jù)是一致的,只有同步之后的數(shù)據(jù)才會(huì)發(fā)生變化)
I:Isolation遇绞,隔離性(連個(gè)事務(wù)相互隔離键袱,不受印象)
D:Durability,持久性 (數(shù)據(jù)一但提交摹闽,不可改變蹄咖,不能回滾)
鎖機(jī)制
當(dāng)使用非索引字段時(shí),行鎖自動(dòng)上升為表鎖