blackhole存储(mysql哪个存储引擎有表空间)

bmyFD67bmjhk3周前 (04-17)众测1

一、mysql到底用哪一款存储引擎

myisam、innodb、heap(memory)、ndb

貌似一般都是使用

innodb的,

mysql的存储引擎包括:myisam、innodb、bdb、memory、merge、example、ndbcluster、archive、csv、blackhole、federated等,其中innodb和bdb提供事务安全表,其他存储引擎都是非事务安全表。

最常使用的2种存储引擎:

1.myisam是mysql的默认存储引擎,当create创建新表时,未指定新表的存储引擎时,默认使用myisam。每个myisam在磁盘上存储成三个文件。文件名都和表名相同,扩展名分别是.frm(存储表定义)、.myd(mydata,存储数据)、.myi(myindex,存储索引)。数据文件和索引文件可以放置在不同的目录,平均分布io,获得更快的速度。

2.innodb存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比myisam的存储引擎,innodb写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。

二、mysql几种存储引擎介绍

MyISAM、InnoDB、Heap(Memory)、NDB

貌似一般都是使用 InnoDB的,

mysql的存储引擎包括:MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、NDBCluster、ARCHIVE、CSV、BLACKHOLE、FEDERATED等,其中InnoDB和BDB提供事务安全表,其他存储引擎都是非事务安全表。

最常使用的2种存储引擎:

1.Myisam是Mysql的默认存储引擎,当create创建新表时,未指定新表的存储引擎时,默认使用Myisam。每个MyISAM在磁盘上存储成三个文件。文件名都和表名相同,扩展名分别是.frm(存储表定义)、.MYD(MYData,存储数据)、.MYI(MYIndex,存储索引)。数据文件和索引文件可以放置在不同的目录,平均分布io,获得更快的速度。

2.InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比Myisam的存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。

三、mysql哪个存储引擎有表空间

一、系统表空间

在 MySQL数据目录下有一个名为 ibdata1的文件,可以保存一张或者多张表。

923275 12M-rw-r----- 1 mysql mysql 12M 3月 18 10:42 ibdata1

这个文件就是 MySQL的系统表空间文件,默认为 1个,可以有多个,只需要在配置文件 my.cnf里面这样定义即可。

innodb_data_file_path=ibdata1:200M;ibdata2:200M:autoextend:max:800M系统表空间不仅可以是文件系统组成的文件,也可以是非文件系统组成的磁盘块,比如裸设备,定义也很简单innodb_data_file_path=/dev/nvme0n1p1:3Gnewraw;/dev/nvme0n1p2:2Gnewraw

系统表空间里都有些啥内容?

具体内容包括:double writer buffer、 change buffer、数据字典(MySQL 8.0之前)、表数据、表索引。

那 MySQL为什么现在主流版本默认都不是系统表空间?

究其原因,系统表空间有三个最大的缺点:原因 1:无法做到自动收缩磁盘空间,造成很大的空间浪费。即使它包含的表都被删掉,这部分空间也不会自动释放。

二、单表空间

单表空间不同于系统表空间,每个表空间和表是一一对应的关系,每张表都有自己的表空间。具体在磁盘上表现为后缀为.ibd的文件。比如表 t1,对应的表空间文件为 t1.ibd917107 96K-rw-r----- 1 mysql mysql 96K 3月 18 16:13 t1.ibd

单表空间如何应用到具体的表呢?

有两种方式:方式 1:在配置文件中开启。在配置文件中开启单表空间设置参数 innodb_filer_per_table,这样默认对当前库下所有表开启单表空间。innodb_file_per_table=1另外也可以直接建表时指定单表空间mysql> create table t1(id int, r1 char(36)) tablespace innodb_file_per_table;

Query OK, 0 rows affected(0.04 sec)

单表空间除了解决之前说的系统表空间的几个缺点外,还有其他的优点,详细如下:

1. truncate table操作比其他的任何表空间都快;

2.可以把不同的表按照使用场景指定在不同的磁盘目录;

比如日志表放在慢点的磁盘,把需要经常随机读的表放在 SSD上等。

mysql> create table ytt_dedicated(id int) data directory='/var/lib/mysql-files';

Query OK, 0 rows affected(0.04 sec)3.可以用 optimize table来收缩或者重建经常增删改查的表。一般过程是这样的:建立和原来表一样的表结构和数据文件,把真实数据复制到临时文件,再删掉原始表定义和数据文件,最后把临时文件的名字改为和原始表一样的。

三、通用表空间

通用表空间先是出现在 MySQL Cluster里,也就是 NDB引擎。从 MySQL 5.7引入到 InnoDB引擎。通用表空间和系统表空间一样,也是共享表空间。每个表空间可以包含一张或者多张表,也就是说通用表空间和表之间是一对多的关系。

相关文章

做出防水11,100米的它,有哪些抢眼的新款

做出防水11,100米的它,有哪些抢眼的新款,一起来阅读精彩内容。有些表外观酷炫,辨识度很高。当然,喜不喜欢看个人。但起码这样的表能给你带来冲击力,看过以后难忘记。比如柏莱士(Bell & Ross)...

尊尼获加蓝牌威士忌携手设计师Angel Chen推兔年特别版

尊尼获加蓝牌威士忌携手设计师Angel Chen推兔年特别版,一起来阅读精彩内容。尊尼获加蓝牌威士忌兔年特别版,以艺术演绎风味美学,设计师陈安琪以尊尼获加蓝牌颜色为灵感,大胆结合了西方美学元素,对蓝进...

尊宝(尊宝披萨,外卖活菩萨)

大家好,今天给大家分享尊宝,一起来看看吧。1暑假了,我可爱又可恶的外甥来杭州找我蹭吃蹭喝,我已经做好了大出血的准备。结果到了之后,他待在我这玩游戏,叫他出门吃饭也不去。指名只吃尊宝披萨。我很奇怪,吃披...

最轻巧的真无线蓝牙耳机JEET AIR2听见

最轻巧的真无线蓝牙耳机JEET AIR2听见,一起来阅读精彩内容。JEET AIR2真无线蓝牙耳机,是我见过的最轻巧的TWS耳机。真无线TWS耳机新品JEET Air 2,看外观就很独特,重量3.4g...

钻石的克拉和分的区别

钻石的克拉和分的区别,一起来阅读精彩内容。克拉和分的概念。克拉carat是衡量钻石重量的单位,而钻石的分point则是克拉的一小部分。理解和计算钻石的克拉和分,对于购买和评估钻石的价值至关重要。下面将...

总投资1.2亿美元,荏原环境项目在青岛自贸片区开工

总投资1.2亿美元,荏原环境项目在青岛自贸片区开工,一起来阅读精彩内容。3月21日,荏原环境项目开工奠基仪式在青岛自贸片区·国际经济合作区举行。该项目由世界制造业500强荏原环境工程株式会社投资建设,...