MySQL架构

 1. mysql查询过程

分页查询:查询第n行到第m行记录
select * from table1 limit n-1,m-n;

select查询过程

所以全表扫描并不会撑爆数据库内存,最多只是占用net_buffer_length大小的内存。

2.主从数据备份过程

写的压力可以水平扩展和垂直扩展来解决,提高数据库并发的同时,会使跨表事务上升为分布式事务。

Slave_IO线程主要是将master上的binlong日志内容复制到slave的中继日志中(Relay_log),binlog顺序写,可以应对较高的并发量。

Slave_SQL线程负责将中继日志中的SQL执行一遍,单线程执行。

半同步复制

从MySQL5.5开始,MySQL已经支持半同步复制了,半同步复制介于异步复制和同步复制之间,主库在执行完事务后不立刻返回结果给客户端,需要等待至少一个从库接收到并写到relay log中才返回结果给客户端。相对于异步复制,半同步复制提高了数据的安全性,同时它也造成了一个TCP/IP往返耗时的延迟。

binlog日志作用:

主从复制,slave使用binlog来回放。

数据恢复。

可以设置binlog日志不刷盘来提高主的写入速度。

3.

posted @ 2020-12-18 11:21  dsfsadfdgd  阅读(87)  评论(0编辑  收藏  举报