mysql表空间---共享表空间、独立表空间

使用InnoDB存储引擎时,需要了解独立表空间和共享表空间。

独立表空间:

每个表会生成独立的文件来存储数据。每个表都有一个.frm的描述文件存放表结构,还有一个.idb文件存放表索引。

优点:

  1. 每个表都有自己的独立表空间;
  2. 每个表的数据和索引都会存储在各个表空间中;
  3. 可以实现单表在不同的数据进行迁移;
  4. 表空间可以回收(删除表时);
  5. 不论如何删除,表空间碎片不会太严重。

缺点:

  1. 单表增长过大时,如超过100G,表查询会比较慢

共享表空间:

数据库中的所有表数据、索引数据都放在同一个文件中,默认路径为data目录下,默认文件名为ibdata1,初始化为10M

优点:

可以将表空间分成多个文件存放在不同磁盘上。数据和文件放在一起方便管理。

缺点:

所有表数据和索引数据存放在一个文件中,将来会是一个很大的文件,拆分成多个文件后会是多个表及索引在表空间中混淆,在对一个表做大量删除操作后,表空间会有大量空隙。

 

开启独立表空间:

查看独立表空间是否开启:  show variables like 'innodb_file_per_table';

开启和关闭独立表空间命令(需要super用户权限设置):

set global innodb_file_per_table = 1/0;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值