今天笔者只学了一点,众所周知,你在转账的时候,不能说转到一半不转了,然后还没了钱,收钱人还没有收到。这心态崩了呀。这就需要你用事务,开始,设置几个关键点,然后回退(只能退),如果一切平安无事就commit提交。
然后就是隔离级别,当不同的打工人连接同一个数据库,有的人完成了他的 *** 作committed or uncommitted,然后你在 *** 作被另一个人影响,这显然是不合适的,于是这些又被分为,脏读,不可重复读和幻读,前者人家还没提交就能读到,后者则是修改和删除的区别而已,与是该程序员的数据库分为,uncommitted和commit read 和repeat read和串行化,前两个都很明显了,后两者都不会上述问题,只是后者会加锁。
存储引擎存储的方式不一样,innodb支持事务会给每列加锁,安全但是慢。
myisam快但是没有事务,加表锁,最快,如果大量的crud,且无安全要求,good。
memory在内存中存储,无io读取,适合临时表,如上线的状态,无意义但是大量变化的值。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)