国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

mysql優化 - mysql innodb 表鎖,跪求dba大牛,解答

瀏覽:116日期:2022-06-12 10:08:11

問題描述

問題:1.在innodb中沒有開啟事務而且autocommit=1的情況下,update,delete會不會造成鎖表?

我在終端開啟了兩個mysql會話,表t一共有350萬行數據

單獨執行:

會話1:update t set status=1 where id>1; 16.*秒 會話2:update t set status=1 where id<3500000; 12.*秒

同時執行,我的理解:

**在我看來,這兩條sql,同時執行,同時操作同一條記錄的情況,只有一次****在innodb中update和delete都會隱式添加排它鎖,那么就是說這兩條sql同時執行,只會阻塞很短的時間,畢竟只有同時操作同一條記錄的情況下,才會阻塞**

同時執行,測試結果:

兩條sql,間隔執行時間,在半秒左右.會話1先執行:update t set status=1 where id>1;16.*秒,沒有變化 會話2后執行:update t set status=1 where id<3500000; 28.* = 12.*秒+16.*秒會話2先執行:update t set status=1 where id>1;12.*秒,沒有變化 會話1后執行:update t set status=1 where id<3500000; 28.* = 16.*秒+12.*秒

難道兩條sql,同時操作同一個記錄時,鎖表了?我的理解應該是只會阻塞很短的時間啊,畢竟只有一次同時操作同一條記錄,就好像,兩個人,a從1數到10,b從10數到1,無論是同樣的速度,還是不是一樣的速度,都只可能同時數到相同的數字一次啊

問題解答

回答1:

一個sql就是一個事務,并不是說操作了1W條記錄就是1W個事務,sql1鎖住所有>1的記錄,sql2會等待sql1釋放鎖

主站蜘蛛池模板: 中文字幕一区二区三区免费视频 | 国产成人亚洲精品影院 | 亚洲精品久久久久中文 | 国产aⅴ精品一区二区三区久久 | 真实国产精品视频国产网 | 日本免费一二区视频 | 欧美一区二区三区视视频 | 国产理伦| 亚洲韩精品欧美一区二区三区 | 亚洲区精品 | 亚洲黄色官网 | 国产成年人视频 | 国产精品99r8免费视频2022 | 久久精品视频观看 | 久久精品国产只有精品2020 | 欧美亚洲国产日韩一区二区三区 | 老司机午夜在线视频免费观 | 成人爱爱网站在线观看 | 91久久国产综合精品女同国语 | yellow中文字幕久久网 | 91久久福利国产成人精品 | a色在线 | 未满14周岁啪啪网站 | 国产亚洲精品一区二区久久 | 亚洲欧美视频二区 | 亚洲视频在线视频 | 亚洲视频在线精品 | 亚洲免费在线观看 | 亚洲高清国产一线久久 | 黄色三级网址 | 中文字幕中文字幕中中文 | 九九精品视频在线观看 | 亚州a| 国产美女一区精品福利视频 | 亚洲国语在线视频手机在线 | 精品欧美日韩一区二区三区 | 国产99视频在线观看 | 中文字幕一区二区在线播放 | 精品在线视频一区 | 香蕉久 | 国产成人美女福利在线观看 |