异常500,程序异常,Exception
当前位置:Exception500 » MySQL » 第一部分:MySQL基础知识讲解

第一部分:MySQL基础知识讲解

来源:exception500.com    发布时间:2020-05-15 15-54-16    浏览次数:1021次

###第一部分:MySQL基础知识讲解

一、MySQL体系结构

客户端:JDBC、ODBS、MySQL客户端(如:Navicat);

MySQL服务层:连接管理器、查询缓存、查询解析器、查询优化器;

存储引擎层:MyISAM、InnoDB、其他(Memory、CSV)


二、MySQL存储引擎

InnoDB特性:

MySQL5.5.8之后默认的存储引擎,具备事务,目前绝大部分应用场景都会使用InnoDB

采用“表空间”保存文件,默认使用行级锁

锁的分类 (指责划分:共享锁(读锁)、独占锁(写锁);粒度划分:行级锁、表级锁)

在InnoDB总是有利用索引的更新、删除操作才可以使用行级锁,不能使用索引的写操作则会是表锁


MyISAM特性: 

不支持事务、支持全文检索支持text、支持前缀索引

支持数据压缩,紧密存储、顺序读性能很好

级锁、混合读写性能不佳、并发性差

使用场景:非事务应用,例如:保存日志;只读类应用,例如:报表数据、字典数据;空间类应用,例如:开发GIS系统(5.7版本之前);系统临时表,例如:SQL查询、分组的临时表引擎


Memory特性: 

不支持事务

内存读写,临时存储(重启后数据丢失)

超高的读写效率,比MyISAM高一个量级

表级锁、性能查询(适合读多、写少的场景)

使用场景:读多写少的静态数据,例如省市区县数据;充当缓存使用,保存高频访问静态数据;系统临时表


CSV特性:

纯文本保存;不支持事务;不支持索引

使用场景:数据交换/数据迁移(MySQL迁移到其他数据库);不依赖MySQL环境


三、影响数据库性能的因素:

数据库结构设计

数据库的存储引擎(MyISAM、InnoDB、Memory、CVS)

SQL语句的书写

数据库参数配置

服务器操作系统与硬件



[关键词: MySQLMyISAMInnoDB ]

软件开发 程序错误 异常 500错误 Exception Copyright© 2019-2021  Exception500 版权所有  【蜀ICP备15020376号-9】  网站地图