【迪B课堂】数据库修炼青铜篇のMySQL概览

netcat20000
发布于 2022-7-14 16:01
浏览
0收藏

 

【迪B课堂】数据库修炼系列第一讲:MySQL架构与引擎。30分钟带你了解MySQL的整体架构,为你构建一个完整的MySQL知识体系基础。

 

不方便看视频的朋友,视频图解奉上:

 

学习MySQL注意事项:语法大全可以帮助进行开发项目,但是学懂MySQL,只靠语句学习是片面的;学习源码在初期无法帮助把握精髓,不推荐初期即看源码;参数在真正学会了MySQL之后手册查询即可;MySQL实战解决方案可以在中后期进行学习观摩。

 

正确入门姿势见下图

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

本节教程架构

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

诞生于1995年的MySQL,在2009年被Oracle收购。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

关系型数据库:MySQL,PostgreSQL是开源关系型数据库的典型代表;SQL Server,Oracle,DB2是商业关系型数据库的代表。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

NoSQL:最大特点是不使用SQL作为查询语言。其中使用较多的数据库分别是:

  • MongoDB,是基于分布式文件存储的开源数据库系统,提供可扩展的高性能数据存储解决方案,将数据存储为文档;
  • Redis,是KV存储系统,Key为字符串类型,只能通过Key对Value进行操作;
  • HBase,是列式存储系统,可以直接使用本地文件系统。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

NewSQL:是现代的关系型数据库,能够提供在线事务的处理能力,具备NoSQL的扩展性。NEW在新架构、针对SQL引擎进行了高度优化、提供透明分片。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

MySQL逻辑架构中分为Server层和引擎层,引擎层采用插件式,可以支持多种引擎。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

读写逻辑的实现:

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

先写日志再写磁盘,MySQL能提供高性能服务,Redo log和Binlog两种日志在其中起到了关键作用。

Redo log固定大小,循环写入。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

Binlog是逻辑日志,可以追加写入,可进行拆分。利用Binlog进行数据回滚可以防止删库跑路悲剧发生。

 

两阶段提交是Binlog和Redo log共同保证逻辑一致,具体流程见下方。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

主流引擎主要是InnoDB、MylSAM、Memory。

【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区【迪B课堂】数据库修炼青铜篇のMySQL概览-鸿蒙开发者社区

文章转自公众号:腾讯云数据库

分类
标签
已于2022-7-14 16:01:45修改
收藏
回复
举报
回复
    相关推荐