1. 程式人生 > >10 mysql 引擎

10 mysql 引擎

儲存引擎

儲存引擎是通過採用不同的技術將資料儲存在檔案或記憶體中,不同的技術有不同的儲存機制,其功能和能力也不同,通過選擇不同的技術,可以獲得特殊的速度或功能,從而提高應用的效能。

儲存引擎是MySQL特有的
在不同的業務場景下選擇不同的儲存引擎,這樣能夠發揮MySQL的最佳效能。

檢視儲存引擎:

show engines;

結果如下圖:

mysql中儲存引擎如下:

MySQL中的儲存引擎有:

  • FEDERATED
  • MRG_MYISAM
  • MyISAM
  • BLACKHOLE
  • CSV
  • MEMORY
  • ARCHIVE
  • InnoDB
  • PERFORMANCE_SCHEMA

 建立表時,可使用engine關鍵字指定儲存引擎,如未指定儲存引擎,則使用預設的儲存引擎,建立好的表可以修改儲存引擎

create table 表名( 欄位 資料型別...) engine=儲存引擎名稱;

儲存引擎名稱不用加引號

修改表的儲存引擎:

alter table 表名 engine=儲存引擎名;

檢視某個表的儲存引擎:

show create table 表名;

示例:

-- 檢視引擎
SHOW ENGINES;
-- 建立表時指定引擎
 CREATE TABLE emptest(id INT,username VARCHAR(20),salary DOUBLE(10,2)) ENGINE=MYISAM;
-- 顯示錶的建立細節,包含了引擎型別 
SHOW CREATE TABLE emptest;
-- 修改指定表的儲存引擎
 ALTER TABLE emptest ENGINE=INNODB;
 SHOW CREATE TABLE emptest;

常用的引擎:

  • MyISAM
    節省資料庫空間,當資料讀遠大於修改時,可以使用該儲存引擎
  • InnoDB
    支援事務,如果資料修改較多時,可以使用該儲存引擎
  • MEMORY
    儲存在記憶體中,速度快,如果儲存非永久性資料時,可以使用該儲存引擎

   參考:小猴子視訊

   原文: http://www.monkey1024.com/database/829