大众信息网

数据库脏读问题

关注:200  答案:2  手机版
解决时间 2021-01-17 01:24
那这岂不是与脏读概念矛盾吗;begin;begin,所以第二个进程是查不到刚插入进去的数据的,XX);select * from user;因为第一个进程没有commit先说一个小例子??。第一个进程use XXX,xx) values(XX;use XXX;这时候在第二个进程中进行查询操作;insert into user (XX,均设置 autocommit=0(手动提交事物),假设开启两个mysql进程?
最佳答案
innodb引擎

主要在看在什么应用上
如果只是论坛,新闻,问答
对数据不敏感及不是核心与钱关系不大的可以忽略
全部回答
你要是用mysql来验证脏读的话,得是两个事务在一个连接里才行:即同连接中事务t1修改数据,事务t2读取数据;mysql各个进程之间在不提交的情况下是不会出现脏读的。一个事务读到另外一个事务还没有提交的数据叫做脏读,不意味着在数据库里一个事务一定会读到另外一个事务还没有提交的数据(有点绕)。另外,建议看一下mysql及各大数据库的默认事务隔离级别问题。mysql是repeatable read。而其它的一般是read committed
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!