(1)Mysql架构和常用引擎介绍

Mysql设计原理栏目总结

(1)Mysql架构和常用引擎介绍

(2)Mysql索引原理和优化总结

1.MySQL逻辑架构图


(1)Server层:包括图中XX,以及所有内置函数和所有跨存储引擎功能,比如存储过程、触发器、视图等。

(2)存储引擎:负责数据存储与提取,支持InnoDB(5.5.5后默认)、MyISAM、Memory等存储引擎。

注意:在create table时使用engine=memory可以指定引擎,且不同存储器共有同一Server层

(1)连接器:负责建立连接(TCP三次握手)、获取权限(用户已连接不受管理员权限修改,只有重新连接生效)。(建议不要再-p后直接拼接密码,以免泄露)

   ①长连接:连接后可以持续在请求使用同一连接,但容易积累内存(查询缓存变大)应定期断开长连接,或重置(mysql_reset_connection)恢复刚连接状态

   ②短连接:执行完几次查询后就断开。

(2)查询缓存(8.0废除)执行过的语句和结果会以key-value形式存在,但更新表后就失效了。

(3)分析器:

  ①Token词法分析:识别关键字、判断字符串为表名还是列名。

  ②Semantic语法分析:是否满足SQL语法规则。

(4)优化器:表中有多个索引时决定使用哪个,或一个语句有多表关联(join)时,决定各表顺序。

 (5)执行器:先判断权限,再打开表,调用对应引擎接口执行。

2.整体逻辑架构图


3.常见引擎:MyISAM与Innodb区别


(1)事务支持不同:

  • MyISAM不支持

  • Innodb支持

(2)锁不同:

  • MyISAM表锁:冲突大性能差,比如表有100万用户数据,而同时只能有一个线程查数据

  • Innodb行锁:锁在了行上

(3)物理文件不同:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值