> 数据库 > MySQL >

MySQL体系结构

      MySQL是一个可移植的数据库,几乎能在当前所有的操作系统上运行,如Unix/Linux、Windows、Mac和Solaris。各种系统在底层实现方面各有不同,但是MySQL基本上能保证在各个平台上的物理体系结构的一致性。
   
   
      MySQL由以下几部分组成:
  • 连接池组件
  • 管理服务和工具组件
  • SQL接口组件
  • 查询分析器组件
  • 优化器组件
  • 缓冲(Cache)组件
  • 插件式存储引擎
  • 物理文件
    MySQL区别于其他数据库的最重要的特点就是其插件式的存储引擎。MySQL插件式的存储引擎架构提供一系列标准的管理和服务支持。
  1、 Connection:不同语言与SQL的交互
       
         max_connections 就是整个MySQL实例的最大连接数限制
         max_user_connections 是单个用户的最大连接数,这里未指明是哪个用户,是任意一个用户。
   2、Management Serveices &Utilities :系统管理和控制工具
        备份和恢复的安全性,复制,集群,管理,配置,迁移和元数据
   3、Connection Pool:连接池
        进行身份验证、线程重用,连接限制,检查内存,数据缓存;管理用户的连接,线程处理等需要缓存的需求。
   4、SQL Interface:SQL接口
        进行DML、DDL,存储过程、视图、触发器等操作和管理;用户通过SQL命令来查询所需结果。
   5、Parser:解析器
       查询翻译对象的特权;SQL命令传递到解析器的时候会被解析器验证和解析。
   6、Optimize:查询优化器
        访问路径的统计数据;
         
          在MySQL优化语句过程中,可以通过设置optimize_switch控制优化行为。在生产环境上,某时间段mysql服务器压力特别大,load一度达到了100,查询发现数据 库中有大量的sql语句state 状态result sorting ,result sorting这种排序特别消耗cpu和内存资源。抽取其中的一条sql查看执行计划。
   7、Cache和Buffer:查询缓存      
        全局和引擎特定的缓存和缓冲区;
      

   8、Pluggable  Storage Engine:插件式存储引擎
   
   MySQL5.6版本默认存储引擎为InnoDB,InnoDB支持事务,并且提供行级的锁定。

(责任编辑:IT)