Enable or Disable file per table
admin
2023-05-18 04:22:06
0

MySQL 版本: 5.7.18


1 首先看一下Disable情况下,table 的tablespace存放位置。


mysql> show variables like '%innodb_file_per_table%';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_file_per_table | ON    |
+-----------------------+-------+
1 row in set (0.00 sec)

mysql> set global innodb_file_per_table=0;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%innodb_file_per_table%';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF   |
+-----------------------+-------+
1 row in set (0.00 sec)


mysql> create table Train.t1 as select * from mysql.user;


ls -l
total 184
-rw-r-----. 1 mysql mysql     65 Jun 13 17:30 db.opt
-rw-r-----. 1 mysql mysql  10816 Jun 14 18:40 t1.frm
-rw-r-----. 1 mysql mysql  17702 Jun 13 17:31 tables.frm
-rw-r-----. 1 mysql mysql 147456 Jun 13 17:31 tables.ibd

note: 只有t1.frm文件,没有数据文件。


2 再来我们看一下Enable情况下,我们移动一下表。


mysql> show variables like '%innodb_file_per_table%';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_file_per_table | OFF   |
+-----------------------+-------+
1 row in set (0.00 sec)

mysql> set global innodb_file_per_table=1;
Query OK, 0 rows affected (0.00 sec)

mysql> show variables like '%innodb_file_per_table%';
+-----------------------+-------+
| Variable_name         | Value |
+-----------------------+-------+
| innodb_file_per_table | ON    |
+-----------------------+-------+
1 row in set (0.00 sec)

mysql> alter table Train.t1 engine=innodb;
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> exit
Bye
ls -l
total 280
-rw-r-----. 1 mysql mysql     65 Jun 13 17:30 db.opt
-rw-r-----. 1 mysql mysql  10816 Jun 14 19:21 t1.frm
-rw-r-----. 1 mysql mysql  98304 Jun 14 19:21 t1.ibd
-rw-r-----. 1 mysql mysql  17702 Jun 13 17:31 tables.frm
-rw-r-----. 1 mysql mysql 147456 Jun 13 17:31 tables.ibd

note: innodb_file_per_table=1;
说明: innodb_file_per_table=1 情况下移动表 alter table Train.t1 engine=innodb
data 目录下多了 t1.ibd 文件。


相关内容

热门资讯

特朗普:霍尔木兹海峡已有协议,... 财联社8月3日电,美国总统特朗普表示,霍尔木兹海峡已有协议,无核化也将达成协议。正在以谈判的形式与伊...
中国地震局启动四级应急响应,现... 据中国地震台网正式测定,2026年8月3日2时21分,在四川宜宾市高县(北纬28.54度,东经104...
以称内塔尼亚胡通过特朗普社媒得... △特朗普社交媒体发文截图总台记者当地时间2日获悉,多名以色列官员称,在美国取消针对伊朗的既定袭击计划...
500左右的手柄怎么选?swi... 现在游戏手柄早已成为热门数码外设,跟风入手的玩家数不胜数,但不清楚500左右的手柄怎么选的人同样不在...
原创 美... 2026年1月1日,美国太空探索技术公司“星链”工程副总裁迈克尔尼科尔斯高调宣布,计划2026年降低...
原创 全... 现在的屏幕设计,拥有两大类型,分别是折叠屏、直板机,而类型之间拥有多种形态。其中的折叠屏,拥有阔折叠...
原创 流... 最近,通信圈的两则消息引发了轩然大波。一方面,中国电信宣布自8月1日起全面停止第三方互联网渠道的办卡...
伊朗重申霍尔木兹海峡不会恢复至... △伊朗外交部发言人巴加埃(资料图)当地时间2日,伊朗外交部发言人巴加埃表示,伊方重申,霍尔木兹海峡的...
伊朗外长:与阿曼谈判接近完成 △伊朗外交部长阿拉格齐(中)当地时间8月2日,伊朗外交部长阿拉格齐在政府内阁会议上介绍伊朗与阿曼谈判...
河南2026年“三支一扶”计划... 针对近期备受关注的2026年河南省“三支一扶”计划招募相关舆情,河南省“三支一扶”领导小组协调办公室...