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

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

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

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

問題描述

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

使用的版本:

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)

測試表

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)

在兩個獨立的會話中創(chuàng)建兩個事務

會話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

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

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

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

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

問題解答

回答1:

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

相關(guān)文章:
主站蜘蛛池模板: 国产一区二区三区国产精品 | 日韩成人片 | 亚洲欧美一区二区三区蜜芽 | 91短视频黄色 | 婷婷久久五月天 | 国产精品真实对白精彩久久 | 黄色大片视频在线观看 | 成人性欧美丨区二区三区 | 在线亚洲欧美 | 精品视频免费看 | 黄色的视频免费看 | 日韩欧美国产精品第一页不卡 | 久久久久日韩精品免费观看网 | 免费看欧美xxx片 | 亚洲qingse| 视频在线观看rrr在线观看 | 亚洲一逼| 国产九九在线视频 | 久久婷婷在线 | 久久综合综合 | 制服丝袜国产在线 | 国产99久久亚洲综合精品 | 日本黄色片一级片 | 国自产在线精品免费 | 久久加久久 | 久久久久久久久亚洲 | 亚洲丶国产丶欧美一区二区三区 | 在线一区二区三区 | 午夜网站在线观看 | 国产亚洲女在线精品 | 成人18免费网 | 国产精品天天看天天爽 | 国产v在线在线观看羞羞答答 | 欧美一区二区在线观看免费网站 | 国产成人精品天堂 | 韩国19禁青草福利视频在线 | 热伊人99re久久精品最新地 | 国产精品一区二区国产 | 久草在线精品 | 91最懂男人的午夜社区 | 亚洲国产七七久久桃花 |