一、redis的主从复制过程
从服务向主服务发送sync的同步命令要求同步数据
主服务接收到同步命令会fork分出一个子进程去生成数据的快照并以rdb的文件发送给从服务
从服务接受到rdb文件,将rdb文件载入内存中
主服务等待从服务加载好rdb文件,在发送缓存中的写入命令给从服务
从服务接受到命令在载入内存中完成数据同步
从服务下次在需要同步,只需要发送当前位置即可不用再同步整个数据,主服务将增加的数据发来,从服务载入即可
二、快照和备份的区别
快照是某一时刻数据存储的状态记录
备份是某一时刻数据的整个副本
备份文件较大,快照文件较小,快照仅仅记录逻辑地址和物理地址的对应关系,当源数据更改时快照必须重写生成,否则对应失效,源数据毁坏时快照是无法回滚数据的。
快照比备份速度要快,备份比快照要安全
三、设计表结构式
1、即使一对多的关系,我们不希望再两张表中添加外键或者为了以后考虑,将一对多关系设置三方表来记录,即使后续有多对多的关系也能够应付
四、mysql的执行
客服端
1、连接器,客服端连接数据库,维护连接信息用户的账号密码验证。
2、分析器,分析sql语句是否合乎规范是否有问题
3、优化器,SQL语句的根据表的数据结构和索引找一个最佳的执行路径,即执行计划
4执行器,根据执行计划与存储引擎交互完成数据的读写操作
存储引擎提供了数据的读写操作的接口,用来与执行器交互。