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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql隔离级别 举例_mysql的事务隔离级别举例

發(fā)布時(shí)間:2024/4/19 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql隔离级别 举例_mysql的事务隔离级别举例 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

事務(wù)是怎么回事,之前已經(jīng)聊過(參見Oracle事務(wù)的隔離),無關(guān)哪個(gè)數(shù)據(jù)庫,只要提到事務(wù),都是這四種隔離級(jí)別。mysql的默認(rèn)隔離級(jí)別是3——可重復(fù)讀。更重要的是,是否支持事務(wù),跟mysql的存儲(chǔ)引擎相關(guān)。登陸mysql,查詢存儲(chǔ)引擎:

mysql>show engines;+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+

| Engine | Support | Comment | Transactions | XA | Savepoints |

+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+

| InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |

| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |

| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |

| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |

| MyISAM | YES | MyISAM storage engine | NO | NO | NO |

| CSV | YES | CSV storage engine | NO | NO | NO |

| ARCHIVE | YES | Archive storage engine | NO | NO | NO |

| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |

| FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |

+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+

9 rows in set (0.00 sec)

我們看到,這么多存儲(chǔ)引擎,也就一個(gè)InnoDB支持事務(wù)。再瞧一下默認(rèn)的事務(wù)隔離級(jí)別:

mysql> select@@tx_isolation;+-----------------+

| @@tx_isolation |

+-----------------+

| REPEATABLE-READ |

+-----------------+

1 row in set, 1 warning (0.00sec)

mysql> select@@global.tx_isolation;+-----------------------+

| @@global.tx_isolation |

+-----------------------+

| REPEATABLE-READ |

+-----------------------+

1 row in set, 1 warning (0.00 sec)

我們看到,不管是當(dāng)前會(huì)話也好,整個(gè)系統(tǒng)也好,默認(rèn)的隔離級(jí)別都是可重復(fù)讀。

再看下默認(rèn)的事務(wù)自動(dòng)提交開關(guān):

mysql> show variables like ‘a(chǎn)utocommit‘;+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| autocommit | ON |

+---------------+-------+

1 row in set, 1 warning (0.00 sec)

我們把上面的開關(guān)給關(guān)了,好測(cè)試:

mysql> set autocommit=off;

Query OK,0 rows affected (0.00sec)

mysql> show variables like ‘a(chǎn)utocommit‘;+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| autocommit | OFF |

+---------------+-------+

1 row in set, 1 warning (0.00 sec)

我們建個(gè)表測(cè)試一下:

mysql>create table test_wlf->(-> id INT(11),-> name VARCHAR(25)->);

Query OK,0 rows affected (0.06 sec)

插入一條數(shù)據(jù):

mysql> insert into test_wlf values(1,"wulf");

Query OK,1 row affected (0.03sec)

mysql> select *from test_wlf;+------+------+

| id | name |

+------+------+

| 1 | wulf |

+------+------+

1 row in set (0.00 sec)

再來一個(gè)窗口,同樣把a(bǔ)utocommit關(guān)掉,兩事務(wù)同時(shí)搞起:

因?yàn)楫?dāng)前的事務(wù)隔離級(jí)別是可重復(fù)讀,所以右邊的事務(wù)始終可以重復(fù)讀取到wulf這條數(shù)據(jù),即使左邊的事務(wù)新增了wumanshu這條數(shù)據(jù),按理應(yīng)該出現(xiàn)幻讀,可惜已經(jīng)被InnoDB用mvcc(多版本并發(fā)控制)解決了。換句話說,幻讀在InnoDB已經(jīng)死絕了。

接下來我們把兩個(gè)窗口都改成已提交讀:

mysql> set tx_isolation=‘READ-COMMITTED‘;

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> select@@tx_isolation;+----------------+

| @@tx_isolation |

+----------------+

| READ-COMMITTED |

+----------------+

1 row in set, 1 warning (0.00 sec)

mysql> set global tx_isolation=‘READ-COMMITTED‘;

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> select@@global.tx_isolation;+-----------------------+

| @@global.tx_isolation |

+-----------------------+

| READ-COMMITTED |

+-----------------------+

1 row in set, 1 warning (0.00 sec)

再試試修改數(shù)據(jù):

以上可以看到已提交讀出現(xiàn)了不可重復(fù)讀。繼續(xù),接下來我們把兩個(gè)窗口都改成未提交讀:

mysql> set tx_isolation=‘READ-UNCOMMITTED‘;

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> set global tx_isolation=‘READ-UNCOMMITTED‘;

Query OK,0 rows affected, 1 warning (0.00sec)

mysql> select@@tx_isolation;+------------------+

| @@tx_isolation |

+------------------+

| READ-UNCOMMITTED |

+------------------+

1 row in set, 1 warning (0.00sec)

mysql> select@@global.tx_isolation;+-----------------------+

| @@global.tx_isolation |

+-----------------------+

| READ-UNCOMMITTED |

+-----------------------+

1 row in set, 1 warning (0.00 sec)

再次更新id為2的name值,事務(wù)的中間結(jié)果都被查出來了,臟讀出現(xiàn):

原文:https://www.cnblogs.com/wuxun1997/p/14087208.html

與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的mysql隔离级别 举例_mysql的事务隔离级别举例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: www.日韩av.com| 久久精品免费在线 | 一区二区三区欧美视频 | 国产h在线 | 人妻少妇偷人精品久久久任期 | 久久九九精品视频 | 色狠狠久久av大岛优香 | 欧美高清性 | 亚洲美女av网站 | いいなり北条麻妃av101 | 日本55丰满熟妇厨房伦 | 超碰在线伊人 | 神马午夜伦理影院 | 欧美特级特黄aaaaaa在线看 | 一二三区在线视频 | 黄网站在线观看视频 | 另类毛片 | 国产成人精品无码高潮 | 久久精品h | 在线sese | 亚洲色图19p | 亚洲欧洲综合网 | 欧美精品色图 | 91免费在线播放 | 成人一区二区av | 久久国产精品免费 | 中文字幕91| 中文av一区二区三区 | 爱爱视频在线看 | 免费欧美视频 | 国产区网址 | 国产免费一区二区三区网站免费 | 超鹏在线视频 | 国产乱淫av麻豆国产 | 97超碰人人模人人人爽人人爱 | 色性网站| 亚洲欧洲无码一区二区三区 | 久久精品视频免费看 | 午夜精品一区二区三 | 91在线中文字幕 | 日本成人三级电影 | 深夜福利成人 | 欧美色吊丝 | 九七伦理电影 | 乱淫的女高中暑假调教h | ass大乳尤物肉体pics | 黑人借宿巨大中文字幕 | 日韩视频在线观看二区 | 亚洲国产欧美日韩在线 | 九九热这里都是精品 | 亚洲一区二区视频 | 免费在线观看黄色网址 | 日韩免费在线 | jizz俄罗斯| 日韩中文电影 | 亚洲一区二区三区在线看 | 欧美在线视频不卡 | 美女精品网站 | 免费黄色在线视频 | 欧美五月婷婷 | 黄色网页大全 | 亚洲国产精品久久久久婷婷老年 | 美女在线免费视频 | 国产高清视频免费在线观看 | 台湾a级艳片潘金莲 | 大地资源高清播放在线观看 | yjizz国产 | 欧美日韩久久 | 手机在线观看av片 | 91禁动漫在线 | 亚洲精品99久久久久中文字幕 | 精品午夜福利在线观看 | 欧美精品在线视频 | 成人免费毛片网站 | 91丨九色 | 国产三级网站 | 岛国av在线免费 | 天天视频色 | 欧美97| 国产黄色av | 爽妇网国产精品 | av丝袜天堂 | 国产少妇在线 | 老师上课夹震蛋高潮了 | gogo人体做爰aaaa | 无码不卡av东京热毛片 | 欧美亚洲国产精品 | 黄色一级在线视频 | 欧美做爰全过程免费看 | www.av在线播放 | 国产中文字幕在线 | 黄色污网站在线观看 | 日本一区二区三区欧美 | 国产欧美日韩高清 | 成人亚洲精品777777ww | 成人av中文字幕 | 久久午夜片 | 少妇一边呻吟一边说使劲视频 | 欧美极品少妇×xxxbbb |