隨筆 - 175  文章 - 202  trackbacks - 0
          <2013年7月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          第一個Blog,記錄哈哈的生活

          常用鏈接

          留言簿(16)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          Java links

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          @import url(http://www.aygfsteel.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
          1. 使用默認隔離級別 repeatable read
          2. 開始,使用 select @@tx_isolation 確認當前 session 的隔離級別,并且創建個表 create table tt (id int, name varchar(300)) engine=innodb
          3. 啟動 transaction 1(t1),使用 start transaction
          4. 啟動 transaction 2(t2), 再開個 mysql,使用 start transaction
          5. 在 t2 執行 select * from tt
          6. 在 t1 執行 insert into tt  values(1, 'haha')
          7. 在 t2 再次執行 select * from tt,是看不到數據的。
          8. 在 t2 執行 update tt set name='hehe' where id=1
          9. 在 t2 再再次執行 select * from tt,居然看到 id=1 那條 hehe 了!
          10. 我們幻讀了......

          參考自:
          http://blog.bitfly.cn/post/mysql-innodb-phantom-read/

          原作者寫得非常好


          posted on 2011-08-02 17:59 哈哈的日子 閱讀(1470) 評論(4)  編輯  收藏

          FeedBack:
          # re: MySQL 的幻讀 2013-06-17 14:57 kelu
          第8步中的更新語句根本不能執行,會提示等待鎖釋放,t1中insert的行還沒有提交,t1還會繼續持有該行上的寫鎖,會導致第8步的超時最終導致更新失敗,所以不會導致幻讀  回復  更多評論
            
          # re: MySQL 的幻讀 2013-07-02 17:03 haiquan
          @kelu 同意
            回復  更多評論
            
          # re: MySQL 的幻讀 2013-07-23 16:50 哈哈的日子
          @kelu
          你說得對,謝謝。實際上是這樣的,我后來才發現,其實是某個固定版本號的 MySQL 的 Bug。  回復  更多評論
            
          # re: MySQL 的幻讀 2015-12-04 18:06 sh
          你應該把文章刪掉,不要危害社會,@haiquan
            回復  更多評論
            

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 栾城县| 济宁市| 专栏| 科尔| 武平县| 普定县| 新丰县| 东乡县| 莫力| 马山县| 吉林省| 望城县| 五台县| 大埔县| 鄂托克前旗| 上饶县| 宜宾县| 德令哈市| 汾西县| 深泽县| 伊宁市| 获嘉县| 营山县| 汕尾市| 通山县| 汨罗市| 惠来县| 河源市| 平原县| 安溪县| 海阳市| 潜山县| 杭州市| 涞源县| 共和县| 新蔡县| 布尔津县| 武冈市| 和林格尔县| 聂拉木县| 夏津县|