MySql的逻辑架构

10 篇文章 0 订阅

Mysql在互联网企业中应用非常广泛,互联网企业的特点访问量非常大,怎么样优化mysql就成了摆在我们面前的一道难题。

我们从mysql的逻辑架构说起:

最上面一层是客户端的连接服务,主要完成客户端的连接处理,授权认证。在该层有一个线程池,每一个连接从线程池中获取线程,省去了创建和销毁线程的开销。

中间这一层可以完成查询解析,分析,优化,缓存。存储过程,触发器,视图也是在这一层。

最下面一层是存储引擎,负责mysql中数据的存储和提取。

 

和其它数据库有所不同,mysql的存储引擎是可插拔的,可以根据不同的场合使用不同的存储引擎。

 

存储引擎:

存储引擎就是存储数据,更新查询数据,建立索引等等的技术实现方式,mysql5.0支持的存储引擎包括: InnoDB MyISAM BDBMEMORYMERGEEXAMPLENDB ClusterARCHIVECSVBLACKHOLEFEDERATED,其中使用最多的是InnoDB MyISAMmysql5.5之后InnoDB是默认的存储引擎我们重点讨论这两个存储引擎

 

查看mysql默认存储引擎的命令:

show variables like '%storage_engine%'

 

InnoDB存储引擎和MyISAM的对比图:

InnoDB存储引擎和MyISAM存储引擎的最大区别有以下三点:

  1. InnoDB支持事物,MyISAM不支持
  2. InnoDB支持外键,MyISAM不支持
  3. 批量插入的速度MyISAM要高于InnoDB

基于以上特点来看看在实际使用中应该如何选择存储引擎:

InnoDB存储引擎:因为InnoDB存储引擎支持事物,所以对于要求事物完整性的场合需要选择InnoDB,比如数据操作除了插入和查询以外还包含有很多更新删除操作,像财务系统等对数据准确性要求较高的系统。

MyISAM存储引擎:如果系统是以读操作和插入操作为主,只有很少的更新删除操作,并且对事物的之处没有要求那么可以选择这个存储引擎。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaxiaomao1981

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值