MySQL一些基础知识
td
- Mysql锁分析相关 : hedengcheng博客
- mysql其他话题: 高性能Mysql
- gap lock
- mvcc
高可用部署方案
- vip: 绑定vip后发送arp广播,vip会被解析到绑定vip的mac地址。
- lvs: 内核netfilter模块支持包过滤,ipvs是一个INPUT链上的钩子函数,能够按照指定的配置在内核态转发数据包。
- keepalied: VRRP协议,在主不可用时,按照配置的优先级选出一个主,绑定vip并且广播给其他节点(所谓ip漂移)。
- mysql主从复制:binlog的dump线程,io读线程,中继日志,sql重放线程
主从切换高科用:MHA+半同步复制,切换过程大致几步
- 尝试保存master binlog
- 寻找最新的slave,应用diff relay log到其他所有slave,保持所有slave最新
- 应用master的binlog
- 提升master
- 更新其他slave的主从配置
半同步复制:一个slave写入relay log返回ack后再返回给客户端,为了解决commit和slave的ack之间crash造成主从不一致,5.7commit之前会等待slave ack。
事务实现
redo log: 保证持久性(D) undo log: 保证回滚时能找到之前的数据(C)
事务隔离:MVCC,隐藏列创建时间和删除时间,活跃事务最小id,readview。
savepoint:回滚点,细粒度控制事务。
锁:X和S锁,表锁,行锁(记录锁),间隙锁。
查询进行中的事务 https://www.cnblogs.com/zuoxingyu/p/6382585.html
https://blog.csdn.net/emoers/article/details/77971468 查询 正在执行的事务: SELECT * FROM information_schema.INNODB_TRX
查看正在锁的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;
查看等待锁的事务 SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
2021-04-14 16:33:24 +0800 yajw Update 2021-03-27 MySQL一些基础知识.md M
2021-04-14 16:07:38 +0800 yajw Update 2021-03-27 MySQL一些基础知识.md M
2021-04-14 15:41:02 +0800 yajw Update 2021-03-27 MySQL一些基础知识.md M
2021-04-14 14:31:25 +0800 yajw Update 2021-03-27 MySQL一些基础知识.md M
2021-03-27 14:49:15 +0800 yajw Copy old posts A