[MySQL] 有没有解决幻读问题

认隔离级别下,MysqL没有解决幻读问题,需要应用代码里加一个锁来解决

幻读问题是啥?

 

认的隔离级别是可重复读 REPEATABLE-READ   ,  在这个模式下出现幻读的例子一般是这两种情况:

事务1和事务2同时,事务1读数据,事务2插入数据提交,事务1插入同样的数据时报错说已经重复了,我明明刚才查的时候没有,为啥报重复了? 

事务1和事务2同时,事务1更新数据可以把事务2的数据也一块给更了,明明刚才没有怎么突然多出来数据了?

 

解决方式是在select读时候的sql增加for update ,会把我所查到的数据锁住,别的事务根本插不进去,这样就解决了,这里用到的是MysqL的next-key locks

 

相关文章

优化MySQL数据库发布系统存储的方法有:1.mysql库主从读写分...
使用mysql的方法:在“我的电脑”→右键→“管理”→“服务”...
在mysql中查看root用户权限的方法:1.命令行启动mysql服务;...
MySQL主从复制是用来备份一个与主数据库一样环境的从数据库,...
运行mysql的方法1.启动mysql服务,在“我的电脑”→右键→“...
开启mysql的方法1.可以通过快捷键win+r,输入cmd,打开窗口,...