中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL樂觀鎖和悲觀鎖介紹

發布時間:2020-08-06 19:26:25 來源:ITPUB博客 閱讀:121 作者:chenfeng 欄目:MySQL數據庫
樂觀鎖
樂觀鎖不是數據庫自帶的,需要我們自己去實現。樂觀鎖是指操作數據庫時(更新操作),想法很樂觀,認為這次的操作不會導致沖突,在操作數據時,并不進行任何其他的特殊處理(也就是不加鎖),而在進行更新后,再去判斷是否有沖突了。

通常實現是這樣的:在表中的數據進行操作時(更新),先給數據表加一個版本(version)字段,每操作一次,將那條記錄的版本號加1。也就是先查詢出那條記錄,獲取出version字段,如果要對那條記錄進行操作(更新),則先判斷此刻version的值是否與剛剛查詢出來時的version的值相等,如果相等,則說明這段期間,沒有其他程序對其進行操作,則可以執行更新,將version字段的值加1;如果更新時發現此刻的version值與剛剛獲取出來的version的值不相等,則說明這段期間已經有其他程序對其進行操作了,則不進行更新操作。


悲觀鎖
與樂觀鎖相對應的就是悲觀鎖了。悲觀鎖就是在操作數據時,認為此操作會出現數據沖突,所以在進行每次操作時都要通過獲取鎖才能進行對相同數據的操作,這點跟java中的synchronized很相似,所以悲觀鎖需要耗費較多的時間。另外與樂觀鎖相對應的,悲觀鎖是由數據庫自己實現了的,要用的時候,我們直接調用數據庫的相關語句就可以了。


說到這里,由悲觀鎖涉及到的另外兩個鎖概念就出來了,它們就是共享鎖與排它鎖。共享鎖和排它鎖是悲觀鎖的不同的實現,它倆都屬于悲觀鎖的范疇。

總結:
樂觀鎖--程序端實現
悲觀鎖--數據庫自己實現
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西峡县| 额济纳旗| 江门市| 肇源县| 竹山县| 渭南市| 武鸣县| 桐乡市| 漾濞| 嘉鱼县| 北安市| 巴马| 岱山县| 曲松县| 巴林左旗| 汉寿县| 台东市| 电白县| 探索| 察哈| 北川| 南宫市| 正镶白旗| 荆州市| 广元市| 安多县| 武鸣县| 华坪县| 百色市| 凤台县| 武邑县| 石楼县| 嵩明县| 德清县| 麦盖提县| 江陵县| 布尔津县| 肇庆市| 绥中县| 平凉市| 武乡县|