文章目录
- 1.事务的特性
- 2.并发事务问题,如何解决,默认隔离级别
- 3.undo log和redo log的区别
- 4.事务中的隔离性是如何保证的(解释一下MVCC)
- 5.主从同步原理
- 6.分库分表
1.事务的特性
2.并发事务问题,如何解决,默认隔离级别
并发事务问题
如何解决:对事务进行隔离
默认隔离级别:可重复读
3.undo log和redo log的区别
● redo log:记录的是数据页的物理变化,服务宕机可用来同步数据
● undo log:记录的是逻辑日志,当事务回滚时,通过逆操作恢复原来的数据
● redo log保证了事务的持久化,undo log保证了事务的原子性和一致性
4.事务中的隔离性是如何保证的(解释一下MVCC)
5.主从同步原理
MySQL主从复制的核心就是二进制日志binlog
- 主库再事务提交时,会把数据变更记录在二进制日志文件Binlog中
- 从库读取主库的二进制日志文件Binlog,写入到从库的中继日志Relay Log
- 从库重做中继日志中的事件,将改变反应它自己的数据
6.分库分表
大多当单表1000万数据或超过20G的时候,就需要用到分库分表
- 水平分库,将一个库的数据拆分到多个库中,解决海量数据存储和高并发的问题
- 水平分表,解决单表存储和性能的问题
- 垂直分库,根据业务进行拆分,高并发下提高磁盘IO和网络连接数
- 垂直分表,冷热数据分离,多表互不影响