数据库 mysql整体框架

ぐ巨炮叔叔 提交于 2020-03-08 06:00:54

数据库 mysql整体框架

1、体系结构

在这里插入图片描述
连接者:不同语言的代码程序和mysql的交互(SQL交互)
1、连接池 管理: 缓冲用户的连接,线程处理等需要缓存的需求
2、管理服务和工具组件 :系统管理和控制工具,例如备份恢复、Mysql复制、集群等
3、sql接口 :接受用户的SQL命令,并且返回用户需要查询的结果
4、查询解析器: SQL命令传递到解析器的时候会被解析器验证和解析(权限、语法结构)
5、查询优化器: SQL语句在查询之前会使用查询优化器对查询进行优化
6、缓存 :如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数据
7、插入式存储引擎 :存储引擎说白了就是如何管理操作数据(存储数据、如何更新、查询数据等)的一种方法。因为在关系数据库
中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)

说明:
在Oracle 和SQL Server等数据库中,所有数据存储管理机制都是一样的。而MySql数据库提供了多种存储引擎
用户可以根据不同的需求为数据表选择不同的存储引擎,用户也可以根据自己的需要编写自己的存储引擎。
甚至一个库中不同的表使用不同的存储引擎,这些都是允许的。

2、存储引擎

这里介绍重点两个:

2.1MyISAM存储引擎

由于该存储引擎不支持事务、也不支持外键,所以访问速度较快。因此当对事务完整性没有要求并以访问为主的应用适合使用该存储引擎

2.2 InnoDB存储引擎

mysql 5.5版本以后默认的存储引擎
由于该存储引擎在事务上具有优势,即支持具有提交、回滚及崩溃恢复能力等事务特性,所以比MyISAM存储引擎占用更多的磁盘空间。因此当需要频繁的更新、删除操作,同时还对事务的完整性要求较高,需要实现并发控制,建议选择。

两这对比:
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!