1. 程式人生 > >MySQL中四種常用儲存引擎的介紹

MySQL中四種常用儲存引擎的介紹

MySQL常用的四種引擎的介紹

(1):MyISAM儲存引擎:不支援事務、也不支援外來鍵,優勢是訪問速度快,對事務完整性沒有 要求或者以select,insert為主的應用基本上可以用這個引擎來建立表

支援3種不同的儲存格式,分別是:靜態表;動態表;壓縮表

靜態表:表中的欄位都是非變長欄位,這樣每個記錄都是固定長度的,優點儲存非常迅速,容易快取,出現故障容易恢復;缺點是佔用的空間通常比動態表多(因為儲存時會按照列的寬度定義補足空格)ps:在取資料的時候,預設會把欄位後面的空格去掉,如果不注意會把資料本身帶的空格也會忽略。

動態表:記錄不是固定長度的,這樣儲存的優點是佔用的空間相對較少;缺點:頻繁的更新、刪除資料容易產生碎片,需要定期執行OPTIMIZE TABLE或者myisamchk-r命令來改善效能

壓縮表:因為每個記錄是被單獨壓縮的,所以只有非常小的訪問開支

(2)InnoDB儲存引擎*

該儲存引擎提供了具有提交、回滾和崩潰恢復能力的事務安全。但是對比MyISAM引擎,寫的處理效率會差一些,並且會佔用更多的磁碟空間以保留資料和索引。
InnoDB儲存引擎的特點:支援自動增長列,支援外來鍵約束

(3):MEMORY儲存引擎

Memory儲存引擎使用存在於記憶體中的內容來建立表。每個memory表只實際對應一個磁碟檔案,格式是.frm。memory型別的表訪問非常的快,因為它的資料是放在記憶體中的,並且預設使用HASH索引,但是一旦服務關閉,表中的資料就會丟失掉。
MEMORY儲存引擎的表可以選擇使用BTREE索引或者HASH索引,兩種不同型別的索引有其不同的使用範圍

Hash索引優點:
Hash 索引結構的特殊性,其檢索效率非常高,索引的檢索可以一次定位,不像B-Tree 索引需要從根節點到枝節點,最後才能訪問到頁節點這樣多次的IO訪問,所以 Hash 索引的查詢效率要遠高於 B-Tree 索引。
Hash索引缺點: 那麼不精確查詢呢,也很明顯,因為hash演算法是基於等值計算的,所以對於“like”等範圍查詢hash索引無效,不支援;

Memory型別的儲存引擎主要用於哪些內容變化不頻繁的程式碼表,或者作為統計操作的中間結果表,便於高效地對中間結果進行分析並得到最終的統計結果,。對儲存引擎為memory的表進行更新操作要謹慎,因為資料並沒有實際寫入到磁碟中,所以一定要對下次重新啟動服務後如何獲得這些修改後的資料有所考慮。

(4)MERGE儲存引擎

Merge儲存引擎是一組MyISAM表的組合,這些MyISAM表必須結構完全相同,merge表本身並沒有資料,對merge型別的表可以進行查詢,更新,刪除操作,這些操作實際上是對內部的MyISAM表進行的。

相關推薦

MySQL常用儲存引擎介紹

MySQL常用的四種引擎的介紹 (1):MyISAM儲存引擎:不支援事務、也不支援外來鍵,優勢是訪問速度快,對事務完整性沒有 要求或者以select,insert為主的應用基本上可以用這個引擎來建立表 支援3種不同的儲存格式,分別是:靜態表;動態表;壓縮表

MySQL常用存儲引擎介紹

產生 存在 一個 訪問 內存 結構 高效 ins 刪除 MySQL常用的四種引擎的介紹 (1):MyISAM存儲引擎: 不支持事務、也不支持外鍵,優勢是訪問速度快,對事務完整性沒有 要求或者以select,insert為主的應用基本上可以用這個引擎來創建表 支持3種不同的存

mysql儲存引擎的區別和選擇

前言 資料庫儲存引擎是資料庫底層軟體組織,資料庫管理系統(DBMS)使用資料引擎進行建立、查詢、更新和刪除資料。不同的儲存引擎提供不同的儲存機制、索引技巧、鎖定水平等功能,使用不同的儲存引擎,還可以 獲得特定的功能。現在許多不同的資料庫管理系統都支援多種不同的資料引擎。MySQL的核心就是儲存引擎。 儲存引

MySQL約束簡述。

一.資料的完整性 域完整性 實體完整性 引用完整性 二.約束 1. 非空約束 not null insert into teacher(id,sex,birthday) values(1,'male','2018-5-5') 會報錯,因為n

mysqlinnodb、mysaim儲存引擎的區別及explain的使用

id : 查詢的序列號 select_type :  查詢的型別 ,主要包括普通查詢、聯合查詢、子查詢。 table : 所訪問資料庫的表的名稱 type :   聯合查詢使用的型別 possible_keys : 指出mysql能使用哪個索引在該表中找到該行,如果這個值為空,則表示沒有相關的索引。 key

MySQL——6.MySQL儲存引擎介紹

目錄 一、什麼是儲存引擎 儲存引擎就是指表的型別。資料庫的儲存型別決定了表在計算機中的儲存方式。使用者可以根據不同的儲存方式、是否進行事務處理等來選擇合適的儲存引擎。 二、如何檢視MySQL的儲存引擎 (一)檢視MySQL支援的儲存

mysql儲存引擎介紹

前言 在資料庫中存的就是一張張有著千絲萬縷關係的表,所以表設計的好壞,將直接影響著整個資料庫。而在設計表的時候,我們都會關注一個問題,使用什麼儲存引擎。等一下,儲存引擎?什麼是儲存引擎? 什麼是儲存引擎? 關係資料庫表是用於儲存和組織資訊的資料結構,可以將表理解為由行和列組

JAVA常用的RPC框架介紹

github 不同的 target int https love num 分布 有一個 RPC是遠程過程調用的簡稱,廣泛應用在大規模分布式應用中,作用是有助於系統的垂直拆分,使系統更易拓展。Java中的RPC框架比較多,各有特色,廣泛使用的有RMI、Hessian、Du

MySQL的常見儲存引擎介紹與引數設定調優(轉載)

原文地址:http://www.cnblogs.com/demon89/p/8490229.html MySQL常用儲存引擎之MyISAM 特性: 1、併發性與鎖級別 2、表損壞修復 check table tablename repair table tabl

mysql儲存引擎介紹

在資料庫中存的就是一張張有著千絲萬縷關係的表,所以表設計的好壞,將直接影響著整個資料庫。而在設計表的時候,我們都會關注一個問題,使用什麼儲存引擎。等一下,儲存引擎?什麼是儲存引擎? 什麼是儲存引擎?   MySQL中的資料用各種不同的技術儲存在檔案(或者記憶體)中。這些技術中的

深入淺出分析MySQL常用儲存引擎

MyISAM:每個MyISAM在磁碟上儲存成三個檔案。第一個檔案的名字以表的名字開始,副檔名指出檔案型別。.frm檔案儲存表定義。資料檔案的副檔名為.MYD (MYData)。索引檔案的副檔名是.MYI (MYIndex)。 MyISAM是MySQL的預設資料庫引擎(5.5版之前),由

Mysql常用儲存引擎——與——索引

1、InnoDB儲存引擎 InnoDB相對來說屬於一種均衡性的儲存引擎,中規中矩,各方面都還不錯,最大的特點是支援事物 2、MyISAM儲存引擎 MyISAM的查詢效率很高,但是不支援事物 Mysql5.5之後預設都使用InnoDB 索引:優化查詢 索引是優化查詢的,索引一般加在

MySQL --儲存引擎介紹

xl_echo編輯整理,交流學習請加1280023003 百戰不敗,依不自稱常勝,百敗不頹,依能奮力前行。——這才是真正的堪稱強大!!! 在諸多資料庫管理系統中,資料引擎支援情況不一,並且引擎的種類也有很多,所以很多資料庫管理系統在引擎上都有一些自己的差異。M

Mysql儲存引擎介紹

1.前言 mysql> show table status like 'user' ; +------+--------+---------+------------+------+----------------+-------------+-----

mysql常用儲存引擎以及悲觀鎖與樂觀鎖

一.mysql常用儲存引擎 (1)MyISAM儲存引擎:不支援事務,也不支援外來鍵,優勢是訪問速度快,對事務完整性沒有要求或者以選擇,插入的為主應用基本上可以用這個引擎來建立³³表可以配合鎖,實現作業系統下的複製備份,遷移。  使用表級鎖,併發性差。  支援全文檢索(MySQ

Matplotlib常用的圖形(

條形圖 條形圖常常用來描述一組資料的對比情況,例如:一週七天,每天的城市車流量等。【條形圖有兩個引數x,y】bar()繪製豎直條形圖、barh()繪製水平條形圖。 匯入繪圖工具包: import matplotlib.pyplot as plt imp

MySQL儲存引擎介紹

前言 在資料庫中存的就是一張張有著千絲萬縷關係的表,所以表設計的好壞,將直接影響著整個資料庫。而在設計表的時候,我們都會關注一個問題,使用什麼儲存引擎。等一下,儲存引擎?什麼是儲存引擎? 什麼是儲存引擎? 關係資料庫表是用於儲存和組織資訊的資料結構,可以將表理解為由

Java引用強 軟 弱 虛 的詳細介紹及理解

 Java中強軟弱虛四種引用 一:引用的目的: 在Java中垃圾回收器的執行是JVM操作的,但是我們仍然可以在一定程度上與垃圾回收器進行互動,其目的在於更好的幫助垃圾回收器管理好應用的記憶體,避免記憶

史上最簡單MySQL教程詳解(進階篇)之儲存引擎介紹及預設引擎設定

什麼是儲存引擎? 與其他資料庫例如Oracle 和SQL Server等資料庫中只有一種儲存引擎不同的是,MySQL有一個被稱為“Pluggable Storage Engine Architecture”(可替換儲存引擎架構)的特性,也就意味著My

Mysql引擎的區別

mysql兩種引擎Innodb和MyIasm Innodb提供了資料庫事務的支援,並實現了sql標準的四種隔離級別,該引擎還提供了航跡鎖和外來鍵約束,它的設計目標是處理大容量資料庫系統,它本身就是基於Mysql後臺的完     整資料庫系統,Mysql執行時INnodb會