mysql 幻讀是什么,幻讀有什么問題


幻讀:指的是一個事務在前后兩次查詢同一個范圍的時候,后一次查詢看到了前一次查詢沒有看到的數據行。(新增)
innodb 默認是可重復讀隔離級別
在可重復讀隔離級別下,普通的傳是快照讀,是不會看到別的事務插入的數據。只有幻讀才能看到
幻讀專指“新插入的行”
幻讀引發的問題:(1)語義有問題.(2)數據不一致性
如何解決幻讀,innodb引入了間隙鎖,它加了7個間隙鎖,防止新數據插入。一般無特殊說明都是左閉區間,右開區間,即前開后閉
除此之外也可以把隔離級別改為讀提交,同時配合binlog_format=row來進行組合使用。
查看當前庫使用的隔離級別:select @@tx_isolation;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM