当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MYSQL教程:数据表在系统中表现形式

MYSQL
mysql "too many connections" 错误 之 mysql解决方法
MySQL: mysql is not running but lock exists 的解决方法
使用mysql中遇到的几个问题
MySQL一个索引最多有多少个列?真实的测试例子
MySQL里Create Index 能否创建主键 Primary Key
MySQL 创建索引(Create Index)的方法和语法结构及例子
MYSQL 优化常用方法
linux mysql 找回密码
mysql 动态执行存储过程语句
MySQL 查找价格最高的图书经销商的几种SQL语句
MySQL 客户端不输入用户名和密码直接连接数据库的2个方法
mysql 查询表中平均分最低的班级
mysql 左连接、右连接和内连接
Mysql LONGBLOB 类型存储二进制数据 (修改+调试+整理)
Mysql LONGTEXT 类型存储大文件(二进制也可以) (修改+调试+整理)
Mysql 插入中文及中文查询 (修改+调试)
mysql 数据表中查找重复记录
MySql .frm数据库文件导入的问题
解决hibernate+mysql写入数据库乱码
mySQL UNION运算符的默认规则研究

MYSQL教程:数据表在系统中表现形式


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 92 ::
收藏到网摘: n/a

MySQL数据表类型有:ISAM、MyISAM、MERGE、BDB、InnoDB和HEAP。每种数据表在文件系统中都有不同的表示方式,有一个共同点就是每种数据表至少有一个存放数据表结构定义的.frm文件。

本文由软晨学习网(http://www.ruanchen.com)整理发布!转载请注明出处,谢谢!

下面介绍每种数据表文件:

  • ISAM数据表是最原始的数据表,有三个文件,分别是:

    .frm,存放数据表的结构定义;

    .ISD,数据文件,存放数据表中的各个数据行的内空;

    .ISM,索引文件,存放数据表的所有索引信息。

  • MyISAM数据表是ISAM数据表的继承者,也有三个文件,分别是:

    .frm,结构定义文件;

    .MYD,数据文件;

    .MYI,索引文件。

  • MERGE数据表是一个逻辑结构,代表一组结构完全相同的MyISAM数据表构成的集合。它在文件系统中有二个文件,分别是:

    .frm,结构定义文件;

    .MRG,构成MERGE表的MyISAM数据表清单,每个MyISAM数据表名占一行。也就是说可通过改变该表的内容来改变MERGE数据表的结构。修改前请先刷新缓存(flush tables),但不建议这样修改MERGE数据表。

  • BDB数据表用两个文件来表示,分别是:

    .frm,结构定义文件;

    .db,数据表数据和索引文件

  • InnoDB由于采用表空间的概念来管理数据表,所以它只有一个与数据表对应.frm文件,同一目录下的其它文件表示为表空间,存储数据表的数据和索引。

  • HEAP数据表是一个存在于内存中的表,所以它的数据和索引都存在于内存中,文件系统中只有一个.frm文件,以定义结构。

了解MySQL数据表在文件系统中表现形式后,我们可知道,创建、修改或删除数据表,其实就是对这些文件进行操作。例如一些数据表(除InnoDB和HEAP数据表外),我们可直接在文件系统中删除相应的文件来删除数据表。

% cd datadir
% rm -f mydb/mydb.*

以上命令可删除mydb数据库中的mydb数据表。