首先感謝進來看的各位,然后有幾個問題請教大家(ˉ﹃ˉ)1.為什么ORACLE只支持READ COMMITTED和SERIALIZABLE(Repeatable Read有嚴重的缺點?)2.大部分數(shù)據(jù)庫的默認級別都是READ COMMITTED為什么mysql卻選擇Repeatable Read3.大家使用spring的話使用的是哪種事務(wù)管理方式?為什么要采用這種方式?4.如何根據(jù)業(yè)務(wù)確定應(yīng)該采用那種級別的隔離級別
2 回答

湖上湖
TA貢獻2003條經(jīng)驗 獲得超2個贊
這個問題好大啊。
目前說的四種隔離級別是SQL92標(biāo)準(zhǔn),各個數(shù)據(jù)庫的具體實現(xiàn)不同導(dǎo)致了默認和推薦的隔離級別不同,畢竟現(xiàn)在的數(shù)據(jù)庫都是MVCC實現(xiàn)的,早已不是傳統(tǒng)的鎖模型了。目前所謂的四種隔離級別其實是對歷史SQL標(biāo)準(zhǔn)的妥協(xié),例如Mysql的Repeatable Read其實是Snapshot Isolation,它不允許幻讀而且并發(fā)下需要用戶自己加鎖。
具體用什么,每種隔離級別能做到什么,請看官方手冊,不要看教科書或者百度的東西。相信看完你也差不多知道要用哪個了。
添加回答
舉報
0/150
提交
取消