mysql 体系结构

连接层:

connection pool(连接池)

原理:预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从‘缓冲池’中取出一个,使用完毕之后在放回去

作用:进行身份验证、线程重用、连接限制、检查内存、数据缓存、管理用户的连接、线程处理等需要缓存的需求


查看当前数据库的最大连接数限制:

查看当前用户的最大连接数限制:(为0即不限制该用户的资源)


SQL层:

管理服务和工具组件

作用:从备份和恢复的安全性、复制、集群、管理、配置、迁移和元数据等方面管理数据库


SQL接口组件

作用:进行DML、DDL、存储过程、视图、触发器等操作和管理,用户SQL命令接口


解析器组件

作用:验证和解析SQL命令


查询优化器组件

作用:对SQL语句查询进行优化(‘选取、投影和连接’)


缓存和缓冲区

作用:由一系列小缓存组成的。如表缓存,记录缓存,key缓存,权限缓存等

查看mysql的缓存信息


Qcache_free_blocks |1 | 缓存空闲的内存块
Qcache_free_memory |1031832 |在query_cache_size设置的缓存中的空闲的内存
Qcache_hits | 0 | 缓存的命中次数
Qcache_inserts
| 0 | 查询缓存区此前总共缓存过多少条查询命令的结果
Qcache_lowmem_prunes
| 0 | 查询缓存区已满而从其中溢出和删除的查询结果的个数
Qcache_not_cached
|439808049 |
Qcache_queries_in_cache | 0 |

Qcache_total_blocks | 1 | 缓存总的内存块

插件式存储引擎:

mysql中数据都是使用不同的技术存储在文件或者内存中,不同的技术就有不同的存储机制,索引技巧和锁定水平,最终提供不同的功能和能力,这些不同的技术以及配套的相关功能在mysql中就称为存储引擎

myisam

查询速度快,有较好的索引优化和数据压缩技术。但是它不支持事务

innodb

支持事务,并且提供行级的锁定,应用很广泛

memory

适合存储临时数据

archive

适合存储历史数据,压缩比高且无损压缩


物理文件层:

支持的文件格式:ext3、ext4、ntfs、nfs

文件内容:数据文件、日志文件、配置文件、其他文件


译者介绍:家华,从事mysqlDBA的工作,记录自己对mysql的一些总结


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值