MYSQL常见问题
1.ACDI的特性,脏读,不可重复读,幻读
1.原子性,一致性(),隔离性(不同用户的事务之间当然要隔离),持久性(数据的修改是永久性,不能丢失)
2.脏读:事务A读取了事务B只修改未提交的数据,不可重复读:事务A多次查询,此时事务B修改了数据库,导致A数据变化,幻读:不可重复读的修改变成了增加数据
2.SQL与NOSQL的区别
SQL结构化表,NOSQSL多种表伸缩性大,
SQL使用外键,NOSQL可以使用外键也可以直接添加到原始数据中
SQL删除有被连接的数据会失败,NOSQL可以
NOSQL按照KEY查询效率高,特定结构需要SQL
3.简单了解悲观锁与乐观锁
悲观锁:多写少读,读数据的时认为会改数据,给他上锁
乐观锁:多读少写,没有锁,所以增加了吞吐量,使用版本号机制和CAS算法
4.版本号机制
每个数据表设置一个version字段,当有数据修改时自动加一,事务要保证读的version与提交的时候一样大
5.四大隔离级别
读未提交,读已提交,可重读(使用MVCC机制),可串行化
静,静,静