iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL存储引擎的介绍及使用
  • 130
分享到

MySQL存储引擎的介绍及使用

2023-06-20 13:06:28 130人浏览 薄情痞子
摘要

本篇内容介绍了“MySQL存储引擎的介绍及使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、MyISAM存储引擎缺点:不支持事务最小粒度

本篇内容介绍了“MySQL存储引擎的介绍及使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、MyISAM存储引擎

缺点:

  1. 不支持事务

  2. 最小粒度:表级

  3. 读写相互阻塞,写入不能读,读时不能写

  4. 不支持mvcC(支持多版本并发控制机制)

  5. 不支持聚簇索引

  6. 不支持数据缓存

  7. 不支持外键

  8. 崩溃恢复性较差

优点:

  1. 最大支持256TB存储空间

  2. 读取数据较快,占用资源较少

MyISAM引擎存储文件:

  • tbl_name.frm: 表格式定义

  • tbl_name.MYD: 数据文件

  • tbl_name.MYI: 索引文件

适用场景:Mysql5.5.5前默认的数据库引擎,在只读(或者写较少)、表较小(可以接受长时间进行修复操作)的场景适用

二:InnoDB存储引擎

特点:

  1. 64TB

  2. 支持事务

  3. 行级锁

  4. 支持多版本并发控制机制(MVCC)

  5. 支持聚簇索引

  6. 支持数据缓存

  7. 支持外键

InnoDB数据库文件:

  • tb_name.frm:表格式定义

  • tb_name.ibd :数据文件

注意:默认所有的innodb表数据文件存储在数据库目录下的ibddata1, ibddata2, ... ,这样极其不方便管理

强烈建议:启用 innodb_file_per_table=ON,每个表单独使用一个表空间存储表的数据和索引

启用:innodb_file_per_table

编辑/etc/my.cnf在[mysqld]下添加 innodb_file_per_table重启服务器 # service mysqld restartMariaDB [(none)]> SHOW VARIABLES LIKE 'innodb_file_per_table';+-----------------------+-------+| Variable_name         | Value |+-----------------------+-------+| innodb_file_per_table | ON    |+-----------------------+-------+

管理存储引擎

查看mysql支持的存储引擎: MariaDB [(none)]> SHOW ENGINES\G

查看当前默认的存储引擎:

MariaDB [(none)]> SHOW VARIABLES LIKE 'storage_engine';+----------------+--------+| Variable_name  | Value  |+----------------+--------+| storage_engine | InnoDB |+----------------+--------+

设置默认的存储引擎:

编辑/etc/my.conf在[mysqld]下添加default_storage_engine = InnoDB

InnoDB存储引擎的缓存

InnoDB存储引擎的缓冲池通常缓冲池的命中不应该小于99%

相关状态变量:

MariaDB [(none)]> SHOW GLOBAL STATUS LIKE 'innodb%read%'\G
  • Innodb_buffer_pool_reads: 表示从物理磁盘读取页的次数

  • Innodb_buffer_pool_read_ahead: 预读的次数

  • Innodb_buffer_pool_read_ahead_evicted: 预读页,但是没有读取就从缓冲池中被替换的页数量,一般用来判断预读的效率

  • Innodb_buffer_pool_read_requests: 从缓冲池中读取页次数

  • Innodb_data_read: 总共读入的字节数

  • Innodb_data_reads: 发起读取请求的次数,每次读取可能需要读取多个页

Innodb缓冲池命中率 = Innodb_buffer_pool_read_requests / ( Innodb_buffer_pool_read_requests + Innodb_buffer_pool_read_ahead + Innodb_buffer_pool_reads )

平均每次读取的字节数 = Innodb_data_read / Innodb_data_reads

三、其他存储引擎

  • PerfORMance_Schema:Performance_Schema数据库;

  • Memory :将所有数据存储在RAM中,以便在需要快速查找参考和其他类似数据的环境中进行快速访问。适用存放临时数据。引擎以前被称为HEAP引擎;

  • MRG_MyISAM:使MySQL DBA或开发人员能够对一系列相同的MyISAM表进行逻辑分组,并将它们作为一个对象引用。适用于VLDB(Very Large Data Base)环境,如数据仓库

  • ArcHive :为存储和检索大量很少参考的存档或安全审核信息,只支持SELECT和INSERT操作;支持行级锁和专用缓存区;

  • Federated联合:用于访问其它远程MySQL服务器一个代理,它通过创建一个到远程MySQL服务器的客户端连接,并将查询传输到远程服务器执行,而后完成数据存取,提供链接单独MySQL服务器的能力,以便从多个物理服务器创建一个逻辑数据库。非常适合分布式或数据集市环境;

  • BDB:可替代InnoDB的事务引擎,支持COMMIT、ROLLBACK和其他事务特性;

  • Cluster/NDB:MySQL的簇式数据库引擎,尤其适合于具有高性能查找要求的应用程序,这类查找需求还要求具有最高的正常工作时间和可用性;

  • CSV:CSV存储引擎使用逗号分隔值格式将数据存储在文本文件中。可以使用CSV引擎以CSV格式导入和导出其他软件和应用程序之间的数据交换;

  • BLACKHOLE :黑洞存储引擎接受但不存储数据,检索总是返回一个空集。该功能可用于分布式数据库设计,数据自动复制,但不是本地存储;

  • example:“stub”引擎,它什么都不做。可以使用此引擎创建表,但不能将数据存储在其中或从中检索。目的是作为例子来说明如何开始编写新的存储引擎。

“MySQL存储引擎的介绍及使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL存储引擎的介绍及使用

本文链接: https://www.lsjlt.com/news/296963.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL存储引擎的介绍及使用
    本篇内容介绍了“MySQL存储引擎的介绍及使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、MyISAM存储引擎缺点:不支持事务最小粒度...
    99+
    2023-06-20
  • MySQL 5.5存储引擎介绍
    存储引擎是MySQL组件,用于处理不同类型的表的SQL操作。 InnoDB存储引擎 默认和应用最广泛的存储引擎。支持事务,具有crash-recovery特性;支持行级锁;支持主键和外键。 Inno...
    99+
    2022-10-18
  • MySQL存储引擎分类及操作介绍
    不知道大家之前对类似MySQL存储引擎分类及操作的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完MySQL存储引擎分类及操作你一定会有所收获的。 MySQ...
    99+
    2022-10-18
  • MySQL存储引擎的功能介绍
    这篇文章主要介绍“MySQL存储引擎的功能介绍”,在日常操作中,相信很多人在MySQL存储引擎的功能介绍问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL存储引擎的功能...
    99+
    2022-10-18
  • MySQL几种常用的存储引擎介绍
    本文主要给大家简单讲讲MySQL几种常用的存储引擎介绍,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望MySQL几种常用的存储引擎介绍这篇文章可以给大家带来一...
    99+
    2022-10-18
  • mysql中常见的存储引擎介绍
    今天就跟大家聊聊有关mysql中常见的存储引擎,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。MySQL中的数据用各种不同的技术存储在文件(或者内存)...
    99+
    2022-10-18
  • mysql存储引擎相关知识介绍
    不知道大家之前对类似mysql存储引擎相关知识介绍的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完mysql存储引擎相关知识介绍你一定会有所收获的。mysql的物理...
    99+
    2022-10-18
  • MySQL 存储引擎 - InnoDB 实现原理介绍
    存储结构   内存结构 内存结构主要包括 Buffer Pool、Change Buffer、Adaptive Hash Index和 Log Buffer 四大组件 Buffer Pool 缓冲池,简称BP。BP以 Page 页为单位,...
    99+
    2023-10-04
    mysql 数据库
  • mysql 体系结构和存储引擎介绍
    目录1 前言2 mysql 配置文件加载顺序3 mysql 引擎介绍3.1 InnoDB 引擎3.2 MyISAM 引擎3.3 NDB 引擎3.4 Archive 引擎3.5 Fed...
    99+
    2022-11-13
  • 【MySQL进阶教程】 存储引擎详细介绍
    前言 本文为 【MySQL进阶教程】 存储引擎 相关知识介绍,下边具体将对MySQL体系结构,存储引擎介绍,存储引擎特点(包含:InnoDB、MyISAM、Memory的特点及对比),存储引擎选择等...
    99+
    2023-08-31
    mysql java 数据库
  • MySQL数据库存储引擎介绍及数据库的操作详解
    目录mysql存储引擎InnoDB存储引擎MyISAM储存引擎Memory存储引擎Archive存储引擎数据库的相关操作创建数据库修改数据库删除数据库查看数据库列表打开数据库MySQL存储引擎 InnoDB存储引擎 In...
    99+
    2022-08-12
    MySQL数据库存储引擎 MySQL数据库操作
  • MySQL的两种存储引擎MyISAM和InnoDB相关介绍
    下面讲讲关于MySQL的两种存储引擎MyISAM和InnoDB,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完MySQL的两种存储引擎MyISAM和InnoDB这篇文章你一定会有...
    99+
    2022-10-18
  • MySQL之存储引擎使用及说明
    目录一、mysql存储引擎概述1.1 存储引擎1.2 mysql支持的存储引擎二、各种存储引擎的特性三、各种搜索引擎介绍四、存储引擎相关sql语句五、mysql的工作流程总结一、my...
    99+
    2023-02-10
    MySQL存储引擎 存储引擎 MySQL存储
  • MySQL常用存储引擎及特点
    下文主要给大家带来MySQL常用存储引擎及特点,希望这些内容能够带给大家实际用处,这也是我编辑MySQL常用存储引擎及特点这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。    ...
    99+
    2022-10-18
  • MySQL的存储引擎
    1、存储引擎概念 • MySQL中的数据用各种不同的技术存储在文件中,每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力,这些不同的技术以及配套的功能在MySQL中称为存储引擎 • 存储引擎是MySQL将数据存储在...
    99+
    2023-09-07
    mysql 数据库 java
  • MySql存储引擎的作用
    目录1. 存储引擎是什么2. 如何给表添加指定存储引擎3. mysql支持那些存储引擎4. mysql常用存储引擎的介绍1. MyISAM存储引擎2. InnoDB存储引擎3. MEMORY存储引擎1. 存储引擎是什么 ...
    99+
    2022-09-16
  • MySQL中的存储引擎
       本篇文章主要介绍了MySQL存储引擎总结,本文讲解了什么是存储引擎 MyISAM、InnoDB、MEMORY、MERGE等内容,需要的朋友可以参考下 前言 在数据库中...
    99+
    2022-10-18
  • 3,mysql的存储引擎
    1,什么是存储引擎,存储引擎说白了就是如何存储数据,如何为存储的数据建立索引和如何更新,查询数据等技术的实现方法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以成为表类型。 在Oracle和SQL Server等数据库中...
    99+
    2023-01-31
    引擎 mysql
  • MySQL的InnoDB存储索引和算法介绍
    今天就跟大家聊聊有关MySQL的InnoDB存储索引和算法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。InnoDB定义InnoDB是事务型数据库的...
    99+
    2022-10-18
  • Mysql中存储引擎的区别及比较
    MyISAM存储引擎 MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事务。 MyISAM主要特性有: 大...
    99+
    2022-05-28
    Mysql 存储引擎 引擎的区别
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作