一、存儲引擎:是表級別的類型。mysql
二、查看錶存儲引擎的方法:sql
(1)、mysql> show table status in mydb where name='classes'\G;數據庫
1. row 併發
Name: classes 表名ide
Engine: InnoDB 存儲引擎性能
Version: 10 表的當前版本(多版本併發)大數據
Row_format: Compact 行格式日誌
Rows: 4 表中的數據行數code
Avg_row_length: 4096 平均每行包含的字節數orm
Data_length: 16384 表中數據的總字節數
Max_data_length: 0 表可以佔用的最大空間,單位字節
Index_length: 0 索引的大小,單位字節
Data_free: 8388608
Auto_increment: 5 下一個Auto_increment值
Create_time: 2015-12-24 18:35:10 表的建立時間
Update_time: NULL 表數據最近一次的修改時間
Check_time: NULL 使用check table 或 myisamchk最近一次檢測表的時間
Collation: utf8_general_ci 排序規則
Checksum: NULL
Create_options: 建立表時指定的選項。
Comment: 表的註釋
(2)、mysql>use mydb;
mysql> show table status like 'classes'\G;
1. row
Name: classes
Engine: InnoDB
Version: 10
Row_format: Compact
Rows: 4
Avg_row_length: 4096
Data_length: 16384
Max_data_length: 0
Index_length: 0
Data_free: 8388608
Auto_increment: 5
Create_time: 2015-12-24 18:35:10
Update_time: NULL
Check_time: NULL
Collation: utf8_general_ci
Checksum: NULL
Create_options:
Comment:
三、InnoDB存儲引擎的特性:
(1)、支持事務:事務日誌。
(2)、支持外鍵
(3)、MVCC多版本併發控制
(4)、支持聚簇索引也叫彙集索引,因聚簇索引的索引文件和數據文件放置到一塊兒,所以聚簇索引只能有一個,
通常用主鍵作聚簇索引。那麼,其餘非聚簇索引一般稱爲輔助索引
(輔助索引的索引文件和數據文件不放置到一塊兒),輔助索引能夠有多個。
(5)、支持熱備份,前提是表存儲時使用獨立表空間(innoDB_file_pre_table=ON )。
(6)、支持行級鎖。
(7)、數據庫崩潰後能夠恢復數據,因有事務日誌。
四、MyISAM存儲引擎的特性:
(1)、不支持事務。
(2)、不支持外鍵。
(3)、不支持行級鎖,支持表級鎖。
(4)、支持延遲更新索引。
(5)、支持全文索引。
(6)、適用場景:讀多寫少、數據較小的表;能容忍崩潰後的修改操做和數據丟失。
(7)、此存儲引擎要按期處理磁盤碎片,否則速度回愈來愈慢,命令是:optimize table 表名。
五、ARCHIVE存儲引擎的特性:
(1)、僅支持insert和select,支持很好的壓縮功能。
(2)、適用於存儲日誌信息或者其它按時間序列實現的數據採集類的應用。
(3)、不支持事務和索引。
六、第三方的存儲引擎:
(1)、XtraDB:加強版的InnoDB,由Percona提供;
編譯安裝時,下載XtraDB的源碼替換爲Mysql存儲引擎中的InnoDB的源碼, XtraDB已做爲MariaDB中的默認的存儲引擎。
(2)、TokuDB:使用Fractal Trees索引,性能很高,特別適用於存儲大數據的表,
已被引入到新版的MariaDB中。
(3)、PBXT:MariaDB自帶此存儲引擎,對SSD硬盤提供適當的支持,
支持事務、MVCC、外鍵約束等,性能也比較高。