MySQL 架构与历史

Posted queqp

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 架构与历史相关的知识,希望对你有一定的参考价值。

1、mysql 逻辑架构,上层客户端-----》连接/线程处理------》解析器-----》优化器 -----》存储引擎,解析器如果有生成查询缓存,那么连接/线程处理也有可能直接到查询缓存,返回结果,图如下

 

2、并发控制,读写锁,共享锁,排他锁,锁粒度(表锁 table lock 行级锁 row lock)

 

3、事务 :原子性,一致性,隔离性,持久性

隔离级别:未提交度,提交读(不可重复读),可重复读 ,可串行化

死锁

MySQL 中的事务

 

4、多版本并发控制(MVCC),只在REPEATABLE READ 和 READ COMMIT下工作,原理就是每行记录后面加两个隐藏的列来实现,一个保存行的创建时间,一个保存行的过期时间;这个时间是指系统版本号;

 

4、MySQL存储引擎 InnoDB       MyISAM      archive(只支持isert和select操作,日志或者数据采集类) CSV  fedetated引擎  Memory引擎(HEAP表)临时表局势memory引擎,场景

NDB集群引擎

 

第三方存储引擎(OLTP类引擎,XtrDB  PBXT TokuDB) 

面向列的存储引擎 infobright,大数据量

 

如何转换表引擎?

1、ALTER TABLE  慢,会消耗系统所有的I/O能力

2、导入与导出

3、创建与查询 

create table innodb_table like myisam_table;

alter table innodb_table engine = innodb;

insert into innodb_table  select * from myisam_table;

数据量大的话,可以分批使用

start transaction;

insert into innodb_table select * from myisam_table  where id between x and y;

commit;

 

以上是关于MySQL 架构与历史的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 架构与历史

MySQL的架构与历史

第01章 MySQL架构与历史

高性能Mysql(第一章MySQL架构与历史)

MySQL之架构与历史

高性能mysql 第1章 mysql架构与历史