服务器学习心得


事务隔离原理

<ul> <li><a href="https://www.bilibili.com/video/BV1pA411H7Vd?p=4">https://www.bilibili.com/video/BV1pA411H7Vd?p=4</a></li> </ul> <h2>事务隔离级别</h2> <ul> <li>读未提交</li> <li>读已提交</li> <li>可重复读(默认)</li> <li>串行化</li> </ul> <h2>事务隔离性实现</h2> <ul> <li>通过锁实现</li> <li>MyISAM 共享锁,独占锁</li> <li>InnoDB 共享锁,排他锁</li> <li>独占锁和排他锁都是互斥的意思</li> </ul> <h2>脏读</h2> <ul> <li>一个事务读取到其他事务没有提交的数据</li> </ul> <h2>不可重复读</h2> <ul> <li>一个事务内,多次查询同一条件,查询同一行记录值不一致</li> </ul> <h2>幻读</h2> <ul> <li>一个事务内,多次查询同一条件,查询记录行数不一致</li> </ul> <h2>隔离级别与脏读、幻读、不可重复读的关系</h2> <table> <thead> <tr> <th>隔离级别</th> <th>脏读</th> <th>不可重复读</th> <th>幻读</th> </tr> </thead> <tbody> <tr> <td>读未提交</td> <td>允许</td> <td>允许</td> <td>允许</td> </tr> <tr> <td>读已提交</td> <td>不允许</td> <td>允许</td> <td>允许</td> </tr> <tr> <td>可重复读</td> <td>不允许</td> <td>不允许</td> <td>允许</td> </tr> <tr> <td>串行化</td> <td>不允许</td> <td>不允许</td> <td>不允许</td> </tr> </tbody> </table>

页面列表

ITEM_HTML