程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MYSQL教程:數據表在系統中表現形式

MYSQL教程:數據表在系統中表現形式

編輯:關於MYSQL數據庫

MySQL數據表類型有:ISAM、MyISAM、MERGE、BDB、InnoDB和HEAP。每種數據表在文件系統中都有不同的表示方式,有一個共同點就是每種數據表至少有一個存放數據表結構定義的.frm文件。

下面介紹每種數據表文件:

  • 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數據表


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved