欢迎来到IDC91站长网!
解决服务器各种技术问题,加微信uecomzsr

MySQL

当前位置: IDC91 > 数据库 > MySQL

MySQL系列之七 MySQL存储引擎

时间:2022-05-30 13:49:42|栏目: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 restart
MariaDB [(none)]> SHOW VARIABLES LIKE 'innodb_file_per_table';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_file_per_table | ON    |
+-----------------------+-------+

上一篇:MySQL系列之四 SQL语法

栏    目:MySQL

下一篇:MySQL系列之十四 MySQL的高可用实现

本文标题:MySQL系列之七 MySQL存储引擎

本文地址:https://idc91.com/shujuku/3513.html

广告投放 | 联系我们 | 免责申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

Copyright © 2023 IDC91.COM 版权所有晋ICP备17006296号