暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL架构介绍

java开发那些事 2021-08-02
301

一、目录结构

  • /var/lib/mysql/
    :MySQL数据库文件的存放路径;

  • /usr/share/mysql
    :配置文件目录;

  • /usr/bin
    :MySQL命令的存放目录;

  • /etc/init.d/mysql
    :启停相关脚本

二、分层结构

MySQL分为四层,从上到下依次为:

  • 连接层:为应用程序提供连接服务的,比如JDBC;

  • 服务层:这一层名堂很多,首先是有连接池,然后有sql接口,解析器,优化器等东西;

  • 引擎层:真正负责mysql数据的存储和读取的部分,提供了很多可拔插式的存储引擎,常用的有MyIsam和InnoDB;

  • 存储层:MySQL中存储的数据最终都要存在硬盘上,文件存储层就是将数据存储到文件系统,并完成与存储引擎的交互。

上面提到了可拔插式,意思就是,你要给手机充电,你可以放在无线充上,也可以用充电头充,也可以用充电宝充。实现相同的功能,你可以选择不同的实现方式,并且这些实现方式之间互不关联互不影响。

三、innoDB和MyIsam对比

对比项MyIsaminnoDB
主外键不支持支持
事务不支持支持
行表锁表锁,操作一条记录也会锁住整张表,不适合高并发行锁,只锁住操作的那一行,适合高并发
缓存只缓存索引,不缓存真实数据不仅缓存索引,也缓存真实数据,对内存要求较高,内存大小对性能有决定性影响
表空间占用
关注点性能事务
是否默认安装



扫描二维码

获取更多精彩

java开发那些事

文章转载自java开发那些事,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论