【數據庫】MySQL的存儲引擎

一.存儲引擎概述

個人理解:存儲引擎中定義了很多種方法,來對存儲中的數據,索引和其他內容進行控制。不同存儲引擎存儲這些數據的方式是不同的。

查看已安裝MySQL存儲引擎:

//以任意數據表爲例,如數據庫mysql中的user表爲例:
use mysql;
show table status like 'user' \G

查詢的信息像是這樣:存儲引擎爲(Engine:MyISAM)

*************************** 1. row ***************************
           Name: user
         Engine: MyISAM
        Version: 10
     Row_format: Dynamic
           Rows: 5
 Avg_row_length: 113
    Data_length: 568
Max_data_length: 281474976710655
   Index_length: 4096
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2015-11-06 23:13:16
    Update_time: 2019-10-18 20:57:56
     Check_time: 2019-10-27 14:24:49
      Collation: utf8_bin
       Checksum: NULL
 Create_options:
        Comment: Users and global privileges
1 row in set (0.00 sec)

二.常用存儲引擎

MySQL不同於其他數據庫,它的存儲引擎是“可插拔”的,就是MySQL Server的核心基礎代碼和存儲引擎是分離的,可以根據個人的選擇選擇合適的引擎,也就是說MySQL支持不同的表使用不同的引擎。MySQL擁有20多個引擎,下面爲常用的幾個引擎:

1.InnoDB引擎
InnoDB支持事務,其設計目標主要面向在線事務處理(OLTP)應用。
特點:支持事務,行鎖設計,支持外鍵;MySQL 5.5.8之後默認存儲引擎;

2.MyISAM引擎
支持全文索引,主要面向一些OLAP數據庫應用。
特點:不支持事務,表鎖設計,支持全文索引;MySQL 5.5.8之前默認存儲引擎;

3.ARCHIVE引擎
特點:只支持INSERT和SELECT操作,從MySQL 5.1開始支持索引;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章