1. 程式人生 > >Innodb、MYISAM的檔案儲存結構

Innodb、MYISAM的檔案儲存結構

MySQL的每個資料庫都對應存放在一個與資料庫同名的資料夾中,MySQL資料庫檔案包括MySQLserver所建立的資料庫檔案和MySQL所用儲存引擎建立的資料庫檔案。

檢視MySql資料庫物理檔案存放位置


1、MySQL建立並管理的資料庫檔案:

.frm檔案:儲存資料表的框架結構,檔名與表名相同,每個表對應一個同名frm檔案,與作業系統和儲存引擎無關,即不管MySQL執行在何種作業系統上,使用何種儲存引擎,都有這個檔案。

除了必有的.frm檔案,根據MySQL所使用的儲存引擎的不同(MySQL常用的兩個儲存引擎是MyISAM和InnoDB),儲存引擎會建立各自不同的資料表文件。

2、innodb資料表文件:

從物理意義上來講,InnoDB表由共享表空間日誌檔案組(redo檔案組)、表結構定義檔案組成。若將innodb_file_per_table設定為on,則系統將為每一個表單獨的生成一個table_name.ibd的檔案(獨佔表空間),在此檔案中,儲存與該表相關的資料、索引、表的內部資料字典資訊。表結構檔案則以.frm結尾,這與儲存引擎無關。

共享表空間以及獨佔表空間都是針對資料的從物理意義上來講

共享表空間:  會把表集中儲存在一個系統表空間裡。即每一個資料庫的所有表的資料,索引檔案全部放在一個檔案中。該檔案目錄預設的是伺服器的資料目錄。 預設的檔名為:ibdata1  初始化為10M。

獨佔表空間:  每一個表分別建立一個表空間,這時。在對應的資料庫目錄裡每一個表都有.ibd檔案(這個檔案包括了單獨一個表的資料內容以及索引內容)。


通過show variables like '%innodb_file_per_table%';可以檢視是哪種型別的表空間。

innodb_file_per_table = ON,也就是獨立表空間的表.


通過show variables like 'innodb_data%';可以產看共享表空間的資料檔案儲存路徑


例子:Innodb獨佔表空間


2.MyISAM資料庫表文件:

MyISAM表是獨立於作業系統的,這說明可以輕鬆地將其從Windows伺服器移植到Linux伺服器;每當我們建立一個MyISAM引擎的表時,就會在本地磁碟上建立三個檔案,檔名就是表明。例如,我建立了一個MyISAM引擎的test表,那麼就會生成以下三個檔案:

test.frm,儲存表定義;
test.MYD,儲存資料;
test.MYI,儲存索引。


相關推薦

InnodbMYISAM檔案儲存結構

MySQL的每個資料庫都對應存放在一個與資料庫同名的資料夾中,MySQL資料庫檔案包括MySQLserver所建立的資料庫檔案和MySQL所用儲存引擎建立的資料庫檔案。 檢視MySql資料庫物理檔案存放位置 1、MySQL建立並管理的資料庫檔案: .frm檔案:儲存資料

對比比較MySql innodbMyIsam 兩種儲存引擎的檔案儲存結構

今天對比一下mysql兩種常用儲存引擎myisam和innodb的檔案儲存結構: 先說一下兩者的大概區別: myisam 更適合讀取大於寫入的業務,同時不支援事物。 innodb 支援事物,效率上比myisam稍慢。 檔案儲存: myism物理檔案結構

MySQL——儲存引擎(InnoDBMyISAMMEMORY)

MySQL是我們經常使用的資料庫處理系統(DBMS),不知小夥伴們有沒有注意過其中的“儲存引擎”(storage_engine)呢?有時候面試題中也會問道MySQL幾種常用的儲存引擎的區別。這次就簡短侃一下儲存引擎那些事兒。 先去查一下“引擎”概念。 引擎(Engin

mysql儲存引擎innodbmyisam區別

MyISAM與InnoDB的區別是什麼? 1、 儲存結構 MyISAM:每個MyISAM在磁碟上儲存成三個檔案。第一個檔案的名字以表的名字開始,副檔名指出檔案型別。.frm檔案儲存表定義。資料檔案的副檔名為.MYD (MYData)。索引檔案的副檔名是.MYI (MYIndex)。InnoDB:所有的表都

mysql的儲存引擎innodbmyisam對插入影響和索引對插入的影響

前言 一直好奇mysql的儲存引擎innodb和myisam對插入影響和索引對插入的影響。 這次我就來做個測試,以下測試供大家參考。 drop table userinfo; CREATE TAB

MySQL三種InnoDBMyISAM和MEMORY儲存引擎對比

什麼是儲存引擎? MySQL中的資料用各種不同的技術儲存在檔案(或者記憶體)中。這些技術中的每一種技術都使用不同的儲存機制、索引技巧、鎖定水平並且最終提供廣泛的不同的功能和能力。通過選擇不同的技術,你能夠獲得額外的速度或者功能,從而改善你的應用的整體功能。這就是儲存引擎 儲存引擎是資料庫的核心,對於mysq

MySQL常見的三種存儲引擎(InnoDBMyISAMMEMORY)

sql 壓縮 安全性 inno 一個表 engines 內存 占用空間 mit 先去查一下“引擎”概念。 引擎(Engine)是電子平臺上開發程序或系統的核心組件。利用引擎,開發者可迅速建立、鋪設程序所需的功能,或利用其輔助程序的運轉。一般而言,引擎是一個程序或一套系

innoDBmyisammemoryBlackHole以及這幾個引擎的講解

innoDB儲存引擎 (1) innodb儲存引擎的mysql表提供了事務,回滾以及系統崩潰修復能力和多版本迸發控制的事務的安全。 (2)innodb支援自增長列(auto_increment),自增長列的值不能為空,如果在使用的時候為空的話怎會進行自動存現有的值開始增值,如果有但是比現在的

將頁面生成的圖片檔案pdf檔案儲存到伺服器地址

將頁面生成的圖片檔案、pdf檔案儲存到伺服器地址,引數$url為連結地址,$filename為要生成的檔名; /** * getPdfPath獲取簡歷生成的連結地址 */ private function getPath($url, $filename)

mysql中innodbMyISAM儲存

轉自:https://www.cnblogs.com/xiaoxi/p/6868087.html 一、零鋪墊     在介紹B樹之前,先來看另一棵神奇的樹——二叉排序樹(Binary Sort Tree),首先它是一棵樹,“二叉”這個描述已經很明顯了,就是樹上的

Kafka負載均衡Kafka自定義PartitionKafk檔案儲存機制

1、Kafka整體結構圖 Kafka名詞解釋和工作方式  Producer :訊息生產者,就是向kafka broker發訊息的客戶端。  Consumer :訊息消費者,向kafka broker取訊息的客戶端  Topic :咋們可

InnoDB引擎--儲存結構檔案

資料庫是資料的集合,資料庫管理系統(DBMS)是操作和管理資料庫的應用程式。資料庫應用主要有兩類:OLAP(聯機分析處理)和OLTP(聯機事務處理)。 OLAP的主要特點是: 實時性要求不高 資料量大 併發量小 OLTP的主要特點是: 實時性要求高

InnoDBMyISAM索引結構

image eight width nod 分享 tle isam mage col 事實證明,一知半解在面試的時候是回答不清楚的InnoDB與MyISAM索引結構

已知長度為n的線性表A採用順序儲存結構,請寫一個時間複雜度為O(n)空間複雜度為O(1)的演算法,該演算法可刪除線性表中所有值為item的資料元素。

語言:C++ #include <iostream> using namespace std; typedef int ElemType; //定義 #define MAXSIZE 100 typedef struct {ElemType *elem; int length;}Sq

使用C++獲取目錄下的指定檔案結構體_finddata_t 以及函式_findfirst_findnext_fineclose

    獲取資料夾裡面下面的相同的檔案是經常用的一個操作,比如我們需要獲取檔案下面所有的.exe檔案,這個時候我們就需要一個結構體和三個函式來幫助我們。     首先需要的結構體:struct _finddata_t     這

實驗三總結線性表的幾種儲存結構

1、順序表:順序表是一段地址連續的儲存單元依次儲存線性表的資料元素,一般用一維陣列實現,這是與連結串列的不同之處。順序表中資料元素之間的邏輯關係是用儲存位置表示的,順序表的隨機存取結構。因為是選擇用陣列實現,所以要分配固定長度的陣列空間,這樣便限制了元素的數量,也容易浪費儲存空間。但同時,其儲存結構

圖的儲存結構(鄰接矩陣鄰接表十字連結串列鄰接多重表)詳解

上篇部落格講到,圖狀結構是非常複雜的結構,圖也是非常複雜的,所以圖的儲存就是一個非常重要的部分,因為我們不僅要表示頂點集,還要表示邊集,如何完整準確的表示圖呢,接下來,給大家講解四種圖的儲存方式。 一、鄰接矩陣法 1、定義 我們用一個二維陣列存放頂點間關係(邊或弧)的資料,這個二維陣

學習筆記-Python基礎19-結構檔案儲存-json

# JSON- 線上工具 - w3c、菜鳥教程- JSON(JavaScriptObjectNotation)- 輕量級的資料交換格式,基於ECMAScript- json格式是一個鍵值對形式的資料集 - key:字串 - value:字串、數字、列表、json - json使用大括號

學習筆記-Python基礎19-結構檔案儲存-正則

# 正則表示式(RegularExpression, re) - 是一個電腦科學的概念 - 用於使用單個字串來描述,匹配符合某個規則的字串 - 常常用來檢索、替換某些模式的文字# 正則寫法 - .(點號):表示任意一個字元,除了\n,比如查詢所有的一個字元 - []:匹配中括號中

Linux叢集儲存——day5——Ceph叢集上部署Linux系統Ceph檔案系統Ceph的物件儲存系統

Ceph叢集儲存的應用    紅帽的Linux已經把Ceph整合到核心中了,可以直接把作業系統裝在分佈儲存檔案中。     將虛擬機器的Linux作業系統安裝在Ceph叢集中:     0. 如同Ceph叢集進行初期環境部署。