日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

锁(学习笔记)

發(fā)布時間:2025/5/22 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 锁(学习笔记) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

行級鎖定和表級鎖定:

行級鎖定:

當(dāng)用戶執(zhí)行了,INSERT,UPDATE,DELETE及SELECT FOR UPDATE語句時,

ORACLE將隱式的實(shí)現(xiàn)記錄的鎖定,如果事務(wù)沒有提交,回滾,就一直在鎖定狀態(tài),一直到事務(wù)提交后,才會將數(shù)據(jù)鎖釋放

表級鎖定:

表級鎖定需要用戶明確的使用LOCK TABLE語句手工鎖定

語法

LOCK TABLE 表名稱|視圖名稱,表名稱|視圖名.... IN 鎖定模式 MODE[NOWAIT]

NOWAIT這是一個可選項(xiàng),當(dāng)視圖鎖定一張表時,如果發(fā)現(xiàn)已經(jīng)被其他事務(wù)鎖定時,不會等待

鎖:共享鎖和排它鎖.

鎖分以下幾種:

ROW SHARE 行共享鎖

在鎖定期間允許其他事務(wù)并發(fā)對表進(jìn)行各種操作,但不允許任何事務(wù)對同一張表進(jìn)行獨(dú)占操作(禁止排它鎖)

ROW EXCLUSIVE 行排它鎖

允許用戶進(jìn)行任何操作,與行共享鎖不同的是它不能防止其它事務(wù)對同一張表進(jìn)行手工鎖或者獨(dú)占操作

SHARE 共享鎖

其它事務(wù)只能執(zhí)行是查詢操作,不能修改操作

SHARE ROW EXCLUSIVE 共享排它鎖

能許任何用戶進(jìn)行查詢操作,但不允許其它用戶使用共享鎖

共享排它鎖的常見應(yīng)用

EXCLUSIVE:排它鎖

事務(wù)將以獨(dú)占方式鎖定表,其它用戶允許查度,但不能修改也不能設(shè)置任何的鎖

?

死鎖:

?

將事務(wù)自動提交關(guān)閉

?

SET AUTOCOMMIT=OFF 取消自動處理,開啟事務(wù)處理

?

?

悲觀鎖:查詢到數(shù)據(jù)后使用FOR UPDATE 將數(shù)據(jù)鎖定

?

第一個會話執(zhí)行

?

SELECT * FROM myemp WHERE deptno=10 FOR UPDATE;

第2個會話也執(zhí)行

SELECT * FROM myemp WHERE deptno=10 FOR UPDATE;

發(fā)現(xiàn)第2個會話,一直在等待,不執(zhí)行

第一個會話執(zhí)行COMMIT或者ROLLBACK后,會話2才可以執(zhí)行

樂觀鎖:把所有鎖定都延遲到即將執(zhí)行更新之前

使用UPDATE 表名 set 字段? WHERE 字段1=查詢出的狀態(tài),AND字段2=查詢出的狀態(tài)

在第一個SESSION上針對emp表使用共享鎖

LOCK TABLE emp IN SHARE MODE NOWAIT

第二個SESSION中刪除emp全部數(shù)據(jù)

DELETE FROM emp;

因是共享鎖,第二個SESSION應(yīng)該只能查度不能修改,所以一直在等待

解鎖:

?

管理員登錄

?

查看數(shù)據(jù)庫中的鎖定

?

SELECT session_id,oracle_username,process FROM v$locked_object;

可以發(fā)現(xiàn)死鎖的SESSION_ID;

查詢V$session數(shù)據(jù)字典

SELECT sid,serial#,username,lockwait,status FROM v$session where sid IN(SESSION_ID);

可以查詢到Serial#

通過

ALTER SYSTEM KILL SESSION'sid,serial#';

解除死鎖

?

?

?

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的锁(学习笔记)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。