mysql 5.7 存储引擎_mysql存储引擎管理使用

mysql采用插件化架构,可以支持不同的存储引擎,比如myisam,innodb。本文简单的介绍mysql存储引擎的管理与使用。

1、查看mysql存储引擎:show engines;

b37f1ce84c25a0c0d6430c5a63a2c342.png

可以看到,mysql 5.7支持InnoDB,MRG_MYISAM,CSV,MyISAM等8种存储引擎,其中InnoDB位默认存储引擎,支持事务,行级锁,外键。

2、查看city创表语句:show create table city;

8daa29f6531ac66078a16f1185a87531.png

可以看到,city表使用Innodb存储引擎。

3、 查询所有表的存储引擎使用情况:show table status;

18b8c4419b34133434fbbd4ce773d81a.png

061c352adea03a93812dd1f47d8acb18.png

可以看到,wold库下所有表都是InnoDB引擎。

4、创表指定存储引擎:create table test(id int default null) engine = myisam;

5、修改表的存储引擎:alter table test engine=innodb;

2016644e6faab99097469644e65b90be.png

6、修改默认存储引擎

# The default storage engine that will be used when create new tables when

default-storage-engine=INNODB

# When innodb_file_per_table is enabled (the default in 5.6.6 and higher), InnoDB stores the data and indexes for each newly created table

# in a separate .ibd file, rather than in the system tablespace.

innodb_file_per_table=1

修改配置文件后重启mysql。innodb_file_per_table=1表示每个表采用不同文件存储数据和索引,0表示所有表共享一份数据文件(系统表空间)。

7、innodb和myisam存储引擎数据文件

(1)innodb数据文件

每个表包含2份数据文件,.frm是表结构描述文件,.ibd是表索引与表数据文件。(前面文章中已经介绍过innodb表索引和数据都存在B+Tree中)

b26f67440173dc579588d8ce8d50ae78.png

下图中ibdata1是系统表空间,innodb_file_per_table=0时,所有innodb表数据与索引都存在此文件中。

c958a85dc2a6f5d98369a4379c424d62.png

(2)myisam数据文件

库coshaho001下面全部是myisam表,每个表包含3个数据文件,.frm是表结构描述文件,.MYD是数据文件,.MYI是索引文件。(前面文章中已经介绍过myisam表索引和数据分开存储)

5447bf0d268a6bdb489e4841858e0fdc.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值