亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

mysql、oracle默認(rèn)事務(wù)隔離級別的說明

瀏覽:9日期:2023-10-06 15:53:44
1.事務(wù)的特性(ACID)

(1)原子性(Atomicity)。事務(wù)中所涉及的程序?qū)?shù)據(jù)庫的修改操作要么全部成功,要么全部失敗。

(2)一致性(Consistency)。事務(wù)執(zhí)行前和執(zhí)行后來源和去向保持平衡。

(3)隔離性(Isolation)。并發(fā)時(shí)每個(gè)事務(wù)是隔離的,相互不影響。

(4)持久性(Durubility)。一旦事務(wù)成功提交,應(yīng)該保證數(shù)據(jù)的完整存在。

2.事務(wù)隔離級別

(1)read uncommitted 未提交讀

所有事務(wù)都可以看到?jīng)]有提交事務(wù)的數(shù)據(jù)。

(2)read committed 提交讀

事務(wù)成功提交后才可以被查詢到。

(3)repeatable 重復(fù)讀

同一個(gè)事務(wù)多個(gè)實(shí)例讀取數(shù)據(jù)時(shí),可能將未提交的記錄查詢出來,而出現(xiàn)幻讀。mysql默認(rèn)級別

(4)Serializable可串行化

強(qiáng)制的進(jìn)行排序,在每個(gè)讀讀數(shù)據(jù)行上添加共享鎖。會導(dǎo)致大量超時(shí)現(xiàn)象和鎖競爭。

mysql、oracle默認(rèn)事務(wù)隔離級別的說明

MySQL

mysql默認(rèn)的事務(wù)處理級別是’REPEATABLE-READ’,也就是可重復(fù)讀

1.查看當(dāng)前會話隔離級別

select @@tx_isolation;

2.查看系統(tǒng)當(dāng)前隔離級別

select @@global.tx_isolation;

3.設(shè)置當(dāng)前會話隔離級別

set session transaction isolatin level repeatable read;

4.設(shè)置系統(tǒng)當(dāng)前隔離級別

set global transaction isolation level repeatable read;Oracle

oracle數(shù)據(jù)庫支持READ COMMITTED 和 SERIALIZABLE這兩種事務(wù)隔離級別。

默認(rèn)系統(tǒng)事務(wù)隔離級別是READ COMMITTED,也就是讀已提交

1.查看系統(tǒng)默認(rèn)事務(wù)隔離級別,也是當(dāng)前會話隔離級別

--首先創(chuàng)建一個(gè)事務(wù)

declare trans_id Varchar2(100); begin trans_id := dbms_transaction.local_transaction_id( TRUE ); end;

--查看事務(wù)隔離級別

SELECT s.sid, s.serial#,CASE BITAND(t.flag, POWER(2, 28))WHEN 0 THEN ’READ COMMITTED’ELSE ’SERIALIZABLE’END AS isolation_levelFROM v$transaction tJOIN v$session s ON t.addr = s.taddr AND s.sid = sys_context(’USERENV’, ’SID’);

補(bǔ)充:SQLserver鎖和事務(wù)隔離級別

隔離級別 隔離級別 臟讀 不可重復(fù)讀 幻象 說明 未提交讀(read uncommitted) 是 是 是 如果其他事務(wù)更新,不管是否提交,立即執(zhí)行 提交讀(read committed默認(rèn)) 否 是 是 讀取提交過的數(shù)據(jù)。如果其他事務(wù)更新沒提交,則等待 可重復(fù)讀(repeatable read) 否 否 是 查詢期間,不允許其他事務(wù)update 可串行讀(serializable) 否 否 否 查詢期間,不允許其他事務(wù)insert或delete 請求模式 IS S U IX SIX X 意向共享(IS) 是 是 是 是 是 否 共享(S) 是 是 是 否 否 否 更新(U) 是 是 否 否 否 否 意向排它(IX) 是 否 否 是 否 否 與意向排它共享(SIX) 是 否 否 否 否 否 排它(X) 否 否 否 否 否 否 鎖

共享鎖:為了共享讀(select),如果存在事務(wù)(一個(gè)或多個(gè))擁有對表中數(shù)據(jù)(關(guān)于鎖數(shù)據(jù)的多少,視鎖的粒度而定)的共享鎖,不允許對鎖定的數(shù)據(jù)進(jìn)行更新(update)

排他鎖:只能有一個(gè),其他的事務(wù)就不能對鎖定的數(shù)據(jù)獲取共享鎖和排他鎖(即排他鎖與共享鎖不能兼容,更多信息請查看鎖兼容性),在此特別強(qiáng)調(diào)一下 鎖定的數(shù)據(jù)。

鎖與隔離級別

類型1

① READUNCOMMITTED:不發(fā)出鎖

② READCOMMITTED:發(fā)出共享鎖,保持到讀取結(jié)束

③ REPEATABLEREAD:發(fā)出共享鎖,保持到事務(wù)結(jié)束

④ SERIALIZABLE:發(fā)出共享鎖,保持到事務(wù)結(jié)束

類型2

① NOLOCK:不發(fā)出鎖。等同于READUNCOMMITTED

② HOLDLOCK:發(fā)出共享鎖,保持到事務(wù)結(jié)束。等同于SERIALIZABLE

③ XLOCK:發(fā)出排他鎖,保持到事務(wù)結(jié)束。

④ UPDLOCK:發(fā)出更新鎖,保持到事務(wù)事務(wù)結(jié)束。(更新鎖:不阻塞別的事物,允許別的事物讀數(shù)據(jù)(即更新鎖可與共享鎖兼容),但他確保自上次讀取數(shù)據(jù)后數(shù)據(jù)沒有被更新)

⑤ READPAST:發(fā)出共享鎖,但跳過鎖定行,它不會被阻塞。適用條件:提交讀的隔離級別,行級鎖,select語句中。

類型3

① ROWLOCK:行級鎖

② PAGLOCK:頁級鎖

③ TABLOCK:表鎖

④ TABLOCKX:表排他鎖

在SELECT語句中使用XLOCK并不能阻止讀。這是因?yàn)镾QL SERVER在讀提交隔離級別上有一種特殊的優(yōu)化,即檢查行是否已被修改,如果未被修改則忽略XLOCK。因?yàn)樵谧x提交隔離級別上這確實(shí)是可以接受的。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: MySQL 數(shù)據(jù)庫
相關(guān)文章:
主站蜘蛛池模板: 青草资源视频在线高清观看 | 亚洲成年人网址 | 日韩精品一区二区三区 在线观看 | 中文字幕亚洲另类天堂 | 久久亚洲网 | 日本久久久久中文字幕 | 达达兔午夜一级毛片 | 日韩综合一区 | sese日本| 亚洲第一毛片 | 免费人成黄页在线观看69 | 婷婷99av综合 | 国内自拍视频一区二区三区 | 国产视频你懂得 | 久久精品全国免费观看国产 | 99草在线视频 | 西瓜影音理论片 | www.一级黄色片| 亚洲精品女同一区二区三区 | 久久免费视频7 | 口国产成人高清在线播放 | 日韩免费观看 | 欧美在线成人午夜网站 | 欧美高清一区二区三 | 日本免费的一级绿象 | 国产成人系列 | 草操视频 | 国产欧美日韩综合在线一 | 国产精品视频视频久久 | 中国特级黄一级真人毛片 | 成人在色线视频在线观看免费大全 | 中国一级片 | 伊人这里只有精品 | 亚洲国产综合视频 | 国产无遮挡又黄又爽在线视频 | 精品日韩欧美一区二区三区在线播放 | 亚洲国产一区二区三区 | 欧美日韩第一页 | 欧美成人亚洲高清在线观看 | 在线看片 在线播放 | 成人涩涩屋福利视频 |