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

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

mysql - 為什么innodb下更新A行時(shí)B行也被鎖住?

瀏覽:162日期:2022-06-14 18:54:59

問題描述

在學(xué)習(xí)MySQL事務(wù)隔離級(jí)別時(shí),本來想重現(xiàn)《高性能MySQL》中的死鎖現(xiàn)象(Page 9)。結(jié)果發(fā)現(xiàn)innodb更新單行時(shí),造成全表被鎖住,不符合innodb行鎖的設(shè)置。

使用的版本:

mysql> status--------------mysql Ver 14.14 Distrib 5.6.26, for Linux (x86_64) using EditLine wrapperConnection id: 2Current database: testCurrent user: root@localhostSSL: Not in useCurrent pager: stdoutUsing outfile: ’’Using delimiter:;Server version: 5.6.26 MySQL Community Server (GPL)Protocol version: 10Connection: Localhost via UNIX socketServer characterset: latin1Db characterset: latin1Client characterset: utf8Conn. characterset: utf8UNIX socket: /var/lib/mysql/mysql.sockUptime: 4 hours 52 min 1 secThreads: 3 Questions: 107 Slow queries: 0 Opens: 69 Flush tables: 1 Open tables: 62 Queries per second avg: 0.006--------------mysql> show variables like ’%isolation%’;+---------------+-----------------+| Variable_name | Value |+---------------+-----------------+| tx_isolation | REPEATABLE-READ |+---------------+-----------------+1 row in set (0.00 sec)

測(cè)試表

mysql> show create table tG;*************************** 1. row *************************** Table: tCreate Table: CREATE TABLE `t` ( `a1` int(11) DEFAULT NULL, `b` varchar(10) DEFAULT NULL, `c` varchar(10) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=latin11 row in set (0.00 sec)ERROR: No query specifiedmysql> select * from t;+------+------+------+| a1 | b | c |+------+------+------+| 1 | a | b || 2 | aa | bb |+------+------+------+2 rows in set (0.00 sec)

在兩個(gè)獨(dú)立的會(huì)話中創(chuàng)建兩個(gè)事務(wù)

會(huì)話1

mysql> start transaction;Query OK, 0 rows affected (0.00 sec)mysql> update t set b=’x’ where a1=2;Query OK, 1 row affected (0.00 sec)Rows matched: 1 Changed: 1 Warnings: 0

會(huì)話2,在被阻塞一段時(shí)間后會(huì)出現(xiàn)超時(shí)錯(cuò)誤。

mysql> start transaction -> ;Query OK, 0 rows affected (0.00 sec)mysql> update t set c=’yy’ where a1=1;ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction

原則上來說,會(huì)話1中的行鎖不會(huì)阻塞會(huì)話2中的更新才對(duì)。

不知道大家是否遇到過這樣的問題,感謝提供相應(yīng)的解答。

問題解答

回答1:

在a1上添加索引,才是行鎖定。innodb 沒有索引,照樣是表鎖定

相關(guān)文章:
主站蜘蛛池模板: 亚洲欧洲一二三区机械有限公司 | 久久毛片网 | 午夜三级a三点 | 久久免费精品国产72精品剧情 | 欧美三级黄色 | 成年女人在线视频 | 日韩精品在线免费观看 | 欧美一级片 在线播放 | 久久夜色精品国产亚洲 | 欧美极品第1页专区 | 无套内谢孕妇毛片免费看 | 日韩欧美亚洲天堂 | hd欧美xxx欧美极品hd | 成人午夜在线观看 | 亚洲国产精品久久卡一 | 久久久久在线视频 | 日本巨乳中文字幕 | 国产美女无遮挡软件 | 国产成人久久综合二区 | 狠狠色狠狠色综合日日32 | 欧美日比视频 | 日韩区| 国产精品久久久久久久网站 | 国产精品三级在线观看 | 在线色网址 | 成人毛片18女人毛片免费 | 国产亚洲一欧美一区二区三区 | 狠狠色丁香久久综合网 | 欧美日韩性视频一区二区三区 | 日本欧美久久久久免费播放网 | 国产欧美日韩不卡一区二区三区 | 韩国一级做a爰片性色毛片 韩国一区在线 | 看全色黄大色黄大片女图片 | 日韩 亚洲 制服 欧美 综合 | 色青青草原桃花久久综合 | 日韩中文字幕一在线 | 欧美色老头oldvideos | 在线观看国产精品日本不卡网 | 国产精品无打码在线播放9久 | 免费视频观看在线www日本 | 91精品免费看 |