• Mysql的InnoDB引擎-1.引擎介绍


    定义数据库以及实例

    数据库:物理操作系统文件或其他形式文件类型的合集。在NDB引擎时候,数据库文件可能不是操作系统上的文件,而是存放在内存之中的文件,但是定义是不变的。

    实例:Mysql数据库由一个后台线程以及一个共享内存区组成。共享内存可以被运行的后台线程锁共享。数据库实例才是真正用于操作数据库文件的。

    mysql中的实例和数据库是保持一一对应的关系,即一个实例对应一个数据库,但是集群中可能存在一个数据库被多个实例使用的情况。

    mysql的连接

    TCP/IP套接字方式是Mysql数据库在任何平台下都提供的连接方式。

    mysql的配置文件读取

    mysql的配置文件由很多,后缀名为.cnf,如果多个配置都有一个参数的话,那么以最后一个读取到的配置文件为准。

    mysql的组成

    • 连接池组件
    • 管理服务和工具组件
    • SQL接口组件
    • 查询分析器组件
    • 优化器组件
    • 缓冲组件
    • 插件式存储引擎
    • 物理文件

    Mysql的存储引擎

    Mysql独有的插件式存储引擎是Mysql区别于其他数据库的最重要的特性。存储引擎的好处是每个引擎有不同的特点,能根据不同的具体应用建立不同的存储引擎表。

    名称 特点
    InnoDB 设计目标是面向在线事物(OLTP:联机事物处理。)处理的应用,支持行锁,支持外键,并支持非锁定读,不支持全文索引。(5.5.8之后的默认引擎)
    MyISAM 不支持事物,表锁设计,支持全文索引。
    NDB 是一个集群引擎,NDB的连接操作是在Mysql数据库层完成,不是在存储引擎层实现,这意味着需要很大网络开销进行连接。
    Memory Memory引擎将表中的数据存放在内存中,如果数据库重启,数据将消失,适合存储临时表以及数据库中的纬度表,Memory存储引擎默认使用哈希索引,而不是B+Tree索引
    Archive 只支持Select和Insert操作,使用zlib算法进行压缩存储。适合存储归档数据,如日志信息等。
    Federated 不是存放数据的引擎,是指向一台远程Mysql数据库服务器上的表,只支持Mysql数据库表之间的只想,不支持异数据库表。
    Maria 为了取代MyISAM引擎而开发的引擎。特点是支持缓存数据以及索引文件。应用了行锁设计,支持了事物。
    其他引擎 Merge、CSV、Sphinx、Infobright

     

  • 相关阅读:
    JAVA 多线程开篇 -从按顺序打印ABC开始
    学英语
    称砝码
    JAVA BST的实现
    JAVA 引用
    常用查找算法的总结
    bootstrap学习之二-组件
    bootstrap学习之一_bootstrap css
    前端学习——css实用技术
    前端学习——css基础知识,选择器与html模板、值得收藏的html标签
  • 原文地址:https://www.cnblogs.com/wangb0402/p/12705017.html
Copyright © 2020-2023  润新知