You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

mysql共享表空间

MySQL是目前应用最为广泛的关系型数据库管理系统之一,支持多种存储引擎,它们有不同的特点和适用场景。共享表空间是MySQL的一种存储引擎特性,介绍了MySQL共享表空间的概念、用法及其实现原理。

一、概念

MySQL共享表空间,简称为共享表,是MySQL的一种存储引擎特性。共享表允许多个表共享同一个物理表空间(.ibd文件),实现多个表数据的共享及动态创建、删除、重命名表等功能。

通常情况下,MySQL的每个InnoDB表都对应一个或多个.ibd文件,只能由对应的表使用,不能被其他表或数据库使用。而共享表允许多个表共用同一个.ibd文件,从而节省磁盘空间,提高磁盘利用率,减少磁盘I/O操作。

二、用法

通过以下两种方式,可以在MySQL中使用共享表:

  1. 修改MySQL配置文件my.cnf,在[mysqld]段中添加如下参数:
innodb_file_per_table=OFF
innodb_file_format=Barracuda
innodb_file_format_max=Barracuda

其中innodb_file_per_table参数控制是否开启每张表单独存储.ibd文件,OFF表示关闭,即启用共享表空间。innodb_file_format和innodb_file_format_max参数指定文件格式,它们必须都设置为Barracuda才能使用共享表空间。

  1. 使用ALTER TABLE语句将原来的表转换为共享表,示例代码如下:
ALTER TABLE t1 ENGINE=InnoDB ROW_FORMAT=REDUNDANT,KEY_BLOCK_SIZE=8;
ALTER TABLE t2 ENGINE=InnoDB ROW_FORMAT=REDUNDANT,KEY_BLOCK_SIZE=8;
ALTER TABLE t3 ENGINE=InnoDB ROW_FORMAT=REDUNDANT,KEY_BLOCK_SIZE=8;
ALTER TABLE t4 ENGINE=InnoDB ROW_FORMAT=REDUNDANT,KEY_BLOCK_SIZE=8;

其中t1、t2、t3、t4是要转换为共享表的表名。REDUNDANT和KEY_BLOCK_SIZE参数可以根据实际情况调整,它们在共享表中的意义不

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
基于云平台的即开即用、稳定可靠、灵活弹性、易于使用的关系型数据库服务

社区干货

MySQL 如何整理表空间碎片

# 前言MySQL 在进行大量的 insert,update,delete 之后,表可能出现碎片,从表面上来看,我们可以会发现数据库占用的空间要比我们真实的数据大小要大很多,从性能的角度来说,表空间碎片会影响数据库性能,这是因为 当 MySQL 进行数据扫描时,扫描的大小是表的容量需求上限,也就是数据被写入的区域中处于峰值的部分。对于 delete 操作来说,删除数据时只是在数据行打上 delete Mark 的标签,当下次进行插入时,这部分空间可以重用,但是如...

MySQL 如何整理表空间碎片

# 前言MySQL 在进行大量的 insert,update,delete 之后,表可能出现碎片,从表面上来看,我们可以会发现数据库占用的空间要比我们真实的数据大小要大很多,从性能的角度来说,表空间碎片会影响数据库性能,这是因为 当 MySQL 进行数据扫描时,扫描的大小是表的容量需求上限,也就是数据被写入的区域中处于峰值的部分。对于 delete 操作来说,删除数据时只是在数据行打上 delete Mark 的标签,当下次进行插入时,这部分空间可以重用,但是如果...

如何排查RDS for MySQL 存储空间占用问题

表占用大小: ```SELECT * FROM information_schema.innodb_sys_tables WHERE NAME LIKE '%#%';```## 查询共享表空间占用大小 ```SELECT file_name, tablespace_name, table_name, ENGINE, index_length , total_extents, extent_sizeFROM information_schema.filesWHERE file_name LIKE '%ibdata%';``` 同时,共享表空间一旦膨胀就无法缩小,不过您可以转储所有 InnoDB 表并将这些表导入到新的 MySQL 数据库实例...

如何排查RDS for MySQL 存储空间占用问题

共享表空间一旦膨胀就无法缩小,不过您可以转储所有 InnoDB 表并将这些表导入到新的 MySQL 数据库实例中[3]。## 查询日志占用大小对于错误日志,慢日志,审计日志的大小,我们可以从RDS 控制台上查看到,选择您的实例,选择"实例信息","使用量统计部分,如下所示:![图片](https://lf6-volc-editor.volccdn.com/obj/volcfe/sop-public/upload_3d05c1ef32111b752622206e27b12065.png)# 解决方案通过上述的分析,我们基本可以明确空间占...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

mysql共享表空间-优选内容

MySQL 如何整理表空间碎片
# 前言MySQL 在进行大量的 insert,update,delete 之后,表可能出现碎片,从表面上来看,我们可以会发现数据库占用的空间要比我们真实的数据大小要大很多,从性能的角度来说,表空间碎片会影响数据库性能,这是因为 当 MySQL 进行数据扫描时,扫描的大小是表的容量需求上限,也就是数据被写入的区域中处于峰值的部分。对于 delete 操作来说,删除数据时只是在数据行打上 delete Mark 的标签,当下次进行插入时,这部分空间可以重用,但是如...
MySQL 如何整理表空间碎片
# 前言MySQL 在进行大量的 insert,update,delete 之后,表可能出现碎片,从表面上来看,我们可以会发现数据库占用的空间要比我们真实的数据大小要大很多,从性能的角度来说,表空间碎片会影响数据库性能,这是因为 当 MySQL 进行数据扫描时,扫描的大小是表的容量需求上限,也就是数据被写入的区域中处于峰值的部分。对于 delete 操作来说,删除数据时只是在数据行打上 delete Mark 的标签,当下次进行插入时,这部分空间可以重用,但是如果...
如何排查RDS for MySQL 存储空间占用问题
表占用大小: ```SELECT * FROM information_schema.innodb_sys_tables WHERE NAME LIKE '%#%';```## 查询共享表空间占用大小 ```SELECT file_name, tablespace_name, table_name, ENGINE, index_length , total_extents, extent_sizeFROM information_schema.filesWHERE file_name LIKE '%ibdata%';``` 同时,共享表空间一旦膨胀就无法缩小,不过您可以转储所有 InnoDB 表并将这些表导入到新的 MySQL 数据库实例...
如何排查RDS for MySQL 存储空间占用问题
共享表空间一旦膨胀就无法缩小,不过您可以转储所有 InnoDB 表并将这些表导入到新的 MySQL 数据库实例中[3]。## 查询日志占用大小对于错误日志,慢日志,审计日志的大小,我们可以从RDS 控制台上查看到,选择您的实例,选择"实例信息","使用量统计部分,如下所示:![图片](https://lf6-volc-editor.volccdn.com/obj/volcfe/sop-public/upload_3d05c1ef32111b752622206e27b12065.png)# 解决方案通过上述的分析,我们基本可以明确空间占...

mysql共享表空间-相关内容

创建实例

兼容版本 支持 MySQL 5.7 或者 MySQL 8.0。 实例类型 支持双节点类型。双节点类型为一主一备经典架构、可添加多个只读节点。 规格类型 支持共享型和通用型两种规格类型。 共享型:独享被分配的内存和存储资源,与... 系统文件空间、Binlog 文件空间和事务文件空间。请输入 20GB~3000GB 范围的存储空间,步长为 10GB,请根据业务情况合理选择。 说明 每个规格对应的存储空间取值范围详情请参见产品规格。 私有网络 从下拉列表中选...

新功能发布记录

2024-04-26 全部 搜索实例 支持展示数据备份和日志备份的空间使用情况 在实例信息页,展示数据备份和日志备份的空间使用情况。 2024-04-26 全部 查看实例信息 优化日志备份列表 优化日志备份列表,提供日志备份所属的节点信息。 2024-04-26 全部 查看日志备份列表 2024 年 03 月功能名称 功能描述 发布时间 发布地域 相关文档 MySQL 8.0 实例支持异步删除大表 MySQL 8.0 实例支持异步删除大表,减少删除大表操作对实例性能产生的影...

创建实例

兼容版本 支持 MySQL 5.7 或者 MySQL 8.0。 实例类型 支持双节点类型。双节点类型为一主一备经典架构、可添加多个只读节点。 规格类型 支持共享型和通用型两种规格类型。 共享型:独享被分配的内存和存储资源,与... 系统文件空间、Binlog 文件空间和事务文件空间。请输入 20GB~3000GB 范围的存储空间,步长为 10GB,请根据业务情况合理选择。 说明 每个规格对应的存储空间取值范围详情请参见产品规格。 私有网络 从下拉列表中选...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

产品规格

两种规格类型的特性如下: 共享型: 独享被分配的内存和存储资源,与同一物理机上的其他共享规格实例共享 CPU 资源。 通过资源复用实现 CPU 使用率的最大化,性价比较高。 部分情况下,实例间会争抢 CPU 资源。 通用型:完全独享分配的 CPU、内存和存储资源,性能稳定,不会受物理机上其他实例的影响。 规格列表云数据库 MySQL 版支持的节点规格如下表所示: 规格分类 规格名称 CPU 核数 内存 最大连接数默认值 最大 IOPS 存储空间 通...

产品优势

基于共享存储,能够分钟级扩容只读节点,一旦扩容完成,自动负载均衡,将压力分担到所有节点。 海量存储采用分布式存储系统,单实例最高 128TiB。 普惠服务存算分离:多个计算节点共享存储,新增只读节点时只需支付计算节点费用,大大降低扩容成本。 用多少算多少:存储空间无需预购买,根据数据用量自动伸缩,您只需为实际占用的数据库容量付费。 稳定可靠云数据库 veDB MySQL 版无单点故障,通过分布式存储等底层架构设计保障服务的高可靠...

创建相同实例配置

存储空间 网络配置 私有网络、子网 高级配置 时区、表名大小写 计费信息 计费类型 说明 保持一致的配置项仍会展示在创建相同配置实例页面,如有需要,可进行更改。 操作步骤登录云数据库 MySQL 版控制台。 在顶部菜... 兼容版本 支持 MySQL 5.7 或者 MySQL 8.0。 实例类型 支持高可用版,可灵活配置实例的主节点、备节点、只读节点。 规格类型 支持共享型和通用型两种规格类型。 共享型:独享被分配的内存和存储资源,与同一物理机...

如何排查RDS for MySQL 内存占用问题

MySQL 内存分为两部分,全局内存和线程级内存[1]:* 独享内存参数的配置:关联 **join_buffer_size**,,线程栈 **thread_stack**,随机读 **read_rnd_buffer_size**,排序 **sort_buffer_size**,顺序读 **read_buffer_size**,客户端结果集暂存 **net_buffer_length**,二进制日志 **binlog_cache_size**,插入缓存 **bulk_insert_buffer_size**,临时表 **tmp_table_size**,**query_cache_siz**等。* 全局共享内存参数的配置:表缓存 **...

如何排查 RDS for MySQL 内存占用问题

MySQL 内存分为两部分,全局内存和线程级内存[1]:- 独享内存参数的配置:关联 **join_buffer_size**,,线程栈 **thread_stack**,随机读 **read_rnd_buffer_size**,排序 **sort_buffer_size**,顺序读 **read_buffer_size**,客户端结果集暂存 **net_buffer_length**,二进制日志 **binlog_cache_size**,插入缓存 **bulk_insert_buffer_size**,临时表 **tmp_table_size**,**query_cache_siz**等。- 全局共享内存参数的配置:表缓存 ...

硬核干货!一文掌握 binlog 、redo log、undo log|社区征文

binlog 记录了对 MySQL 数据库执行更改的所有的写操作,包括所有对数据库的数据、表结构、索引等等变更的操作。> 注意:这其中不包含 SELECT、SHOW 等,因为对数据没有修改只要是对数据库有变更的操作都会记录到 ... 所以此模式下会非常节省日志空间,也避免着大量的 IO 操作。 优点:不需要记录每一行的变化,减少了 binlog 日志量,节约了 IO , 从而提高了性能; 缺点:在某些情况下会导致主从数据不一致,比如执行 sysdate...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

数据智能知识图谱
火山引擎数智化平台基于字节跳动数据平台,历时9年,基于多元、丰富场景下的数智实战经验打造而成
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询