MYSQL表门类(存储引擎)

MYSQL表类型(存储引擎)

?

?

?

MYSQL表类型(存储引擎)

?

?

?

?

1.概述

?

MySQL数据库其中一个特性是它的存储引擎是插件式的。用户可以根据应用需要选择存储引擎。Mysql默认支持多种存储引擎,以适用各种不同的应用需要。

默认情况下,创建表不指定表的存储引擎,则新表是默认存储引擎的。可以通过show engines来查看MySQL支持的存储引擎和默认的存储引擎。

?如果想改变默认的存储引擎,可以修改my.ini文件中的default-storage-engine。在创建新表的时候,可以通过增加ENGINE关键字设置新表的存储引擎。

如:

???????? Create table ai{

?????????????????? id bigint(20) not null auto_increment,

?????????????????? primary key(id)

} ENGINE=MyISAM default charset=utf-8;

Create table bi{

?????????????????? id bigint(20) not null auto_increment,

?????????????????? primary key(id)

} ENGINE=InnoDB default charset=utf-8;

?

?

?2.MyISAM

?

MyISAM不支持事务,不支持外键,其优势是访问速度快,对事务完整性没有要求或者以SELECTINSERT为主的应用基本上都可以使用这个引擎来创建表。

每个MyISAM在磁盘上存储成3个文件,其文件名都和表名相同,扩展名分别是:

???????? .frm(存储表定义);

???????? MYD(MYData, 存储数据);

???????? MYI(MYIndex, 存储索引)

数据文件和索引文件可以放置在不同的目录,平均分布IO,获取更快的速度。

要指定索引文件和数据文件的路径,需要在创建表的时候通过DATA DIRECTORYINDEX DIRECTORY语句指定,文件路径需要绝对路径,并且具有访问权限。

?

3.I

MYSQL表门类(存储引擎)

相关文章:

你感兴趣的文章:

标签云: