MySQL Tables
轉載自網友的文章( 這裡 ),說明了MySQL各種資料表的特性: 另外一比較MySQL資料表的 文章 也有詳細的比較。 MyISAM : 1. 效能優,預設引擎,為 Mysql最早使用的引擎 2. 使用MyISAM將具備三種 檔案: .frm (table format) .MYD(data file) .MYI(index file) 3. 所有資料是以low byte first儲存,數字型key是以high byte first儲存以利索引 4. 支援大檔 ( > 63 bit) 5. 支援42億(2^32次方) 資料筆數,如果MySQL編譯有加入--with-big-tables 選項可支援多一倍(2^32次方 * 2)資料量 6. 不支援事務處理,例如關聯式 資料庫 7.AUTO_INCREMENT 更快(至少10%),序列的值被刪除之後就不能再利用 InnoDB: 1. 具備Commit, Rollback和當掉復原的事務處理能力,可保護使用者資料 2. 可進行row-level的 鎖定同時維持nonlocking reads,以支援多人同時連線狀態 3. 可支援FOREIGN KEY 4.InnoDB 是專門為了大容 量資料的最大效率進行設計的,CPU效能是其他的disk-based資料庫引擎所不及的 5.InnoDB 儲存他的表和 index在一個表空間中,此表空間可能包含幾個檔(有可能在不同disk partitions),此點和MyISAM不同,MyISAM是一個表一個檔案,這差一點造成InnoDB表個可以非常大,即使是超過系統的file size(例如2GB)都可處理 6. 此為Windows安裝檔的 默認值 7.InnoDB 上可處理存儲超 過1TB的數據,可支援例如平均每秒800次插入/更新的負荷 8. 支援關聯資料庫 InnoDB 使用上的限制: 1. 不要將MyISAM轉成InnoDB table ...