MySQL存儲引擎介紹

查看MySQL數據庫中創建表的信息

如上圖所示,當我們使用命令show create table server_info\G;可以顯示我們所創建的表的信息,只顯示兩個字段,第一個字段是Table 即是創建的表的名稱,第二個字段是Create Table即是創建的表的字段的信息,以及所創建的表所使用的存儲引擎是什么存儲引擎,默認情況下engine是InnoDB。

其中的ENGINE=InnoDB? 其中的InnoDB是MySQL數據庫所支持的一個存儲引擎名稱,

介紹MySQL中的存儲引擎storage engine

storage是存儲的意思。

engine是引擎的意思。

車里面的引擎是可以更換的,不同的引擎代表不同的性能,那么在MySQL數據庫中存儲引擎也是可以更換的,在MySQL軟件上使用不同的引擎代表的是支持不同的功能,

如上圖所示,可以使用命令show engines;

來查看機器上的MySQL軟件上支持那些存儲引擎。

如上圖所示,可以看到當前MySQL軟件default默認支持InnoDB這樣的搜索引擎,

表中的Comment這一列中的信息,表明了不同搜索引擎,所支持的不同功能特性。

存儲引擎功能介紹

1.InnoDB這樣的存儲引擎,?Supports transactions, row-level locking, and foreign keys?

第一個所支持的功能特性是transactions——事務

第二個所支持的功能特性是row-level locking——外接

第三個所支持的功能特性是foreign keys ——行級鎖

行級鎖涉及到鎖粒度問題:分別是表級鎖和行級鎖,也就是說當我們使用表級鎖的時候整個表的數據是不能夠被修改的,當我們使用行級鎖的時候整一行的數據是不能被做修改的。

?2.MEMORY(內存)這樣的存儲引擎,?Hash based, stored in memory, useful for temporary tables?

如果將來把MySQL數據庫的存儲引擎改成MEMORY,則將來在往數據庫中存儲數據的時候,只會將數據存往內存里面,不會將數據存往硬盤里面,特點是速度快,應用場景是臨時數據,

?3.BLACKHOLE? ?(黑洞)? ? ? ?| YES ? ? | /dev/null storage engine (anything you write to it disappears)

使用這個存儲引擎的時候,存入的數據都會消失。

這樣的存儲引擎在MySQL主從復制的場景會有特殊的應用,

?4.MyISAM? ? 這個存儲引擎在查詢數據的速度快,?| MyISAM storage engine ? ? ?

?5.MRG_MYISAM ? ? ? ? | YES ? ? | Collection of identical MyISAM tables ? ? ? ? ? ? ?

這個存儲引擎支持將多個MyISAM表進行合并。

6.CSV這個存儲引擎一般適用于數據分析行業。

7.ARCHIVE一般適用于做數據挖掘的工作。

如何修改MySQL數據庫的存儲引擎?

如上圖所示,可以在MySQL的配置文件中加上? default_storage_engine ,這行配置的作用就是用來修改MySQL數據庫的搜索引擎的,

在Linux操作系統上使用vim /etc/my.cnf

去在文件中加上default_storage_engine? 這樣一個配置就能成功修改MySQL數據庫的默認存儲引擎,

如上圖所示,想要什么樣的存儲引擎就使用default_storage_engine =想要使用的存儲引擎。

如上圖所示,在重新設置MySQL數據庫的存儲引擎之后,需要在Linux操作系統中使用命令systemctl restart mysql即重新啟動mysql系統,

具體查看MySQL軟件上的存儲引擎的辦法有兩種

第一種方法

如上圖所示,可以使用show engines;

來顯示當前MySQL軟件上所支持的默認存儲引擎是哪個。

第二種方法,

如上圖所示,可以使用命令select @@default_storage_engine;

來查看/etc/my.cnf文件中關于MySQL軟件default_storage_engine的默認支持存儲引擎的一個信息。

如上圖所示,如果修改數據庫的存儲引擎后,那么先前創建的表的存儲引擎都是修改之前的,之后創建的表的存儲引擎都是修改之后的存儲引擎。

如上圖所示,server_info.frm文件是server_info表的表結構文件,這個文件中所儲存的是這個表的字段名,字段數據類型,這樣的信息。

server_info.ibd文件所儲存的是server_info表中所儲存的真實數據。以及我在這個表中所創建的索引信息。

如上圖所示,如果MySQL數據庫的存儲引擎是MyISAM,那么表現在Linux操作系統中就是frm文件——表結構文件,MYD文件——文件所儲存的是表中的真實數據,MYI文件所儲存的是表的索引信息。

索引——目錄

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/12671.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/12671.shtml
英文地址,請注明出處:http://en.pswp.cn/web/12671.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python中logging模塊的使用

在Python中,logging模塊提供了一個靈活的日志記錄系統,用于將程序的輸出信息分門別類地發送到不同的目的地。Logger對象是這個系統的核心,它負責創建日志消息。默認情況下,如果沒有特別配置,Logger會將日志輸出到標準錯…

Redis過期刪除策略和內存淘汰策略有什么區別?

Redis過期刪除策略和內存淘汰策略有什么區別? 前言過期刪除策略如何設置過期時間?如何判定 key 已過期了?過期刪除策略有哪些?Redis 過期刪除策略是什么? 內存淘汰策略如何設置 Redis 最大運行內存?Redis 內…

buildroot添加ssh功能

在制作了自己的buildroot生成的根文件系統之后,是沒有ssh服務的,需要自行添加。 在buildroot的menuconfig里: Target packages -> Networking applications -> openssh 重新編譯,還不能通過電腦連接,還需配置并…

xorg.conf 設置 集顯 獨顯 英偉達 Ubuntu 風扇調速

使用集顯做顯示,使用獨顯做機器學習,那么xorg.conf如何配置? 如果配不好,那么會卡在歡迎登錄界面,據說也會限制風扇調速的功能。 既然GPT時代了,那么我們就用AI加速一下,直接lspci | grep -i v…

ANSYS許可監控?

在工程設計與仿真領域,ANSYS軟件作為行業翹楚,為企業提供了強大的支持。然而,隨著業務規模的擴大和軟件版本的升級,如何有效地監控ANSYS許可證的使用情況,確保合規性和資源的高效利用,成為企業面臨的重要問…

react 圖片沒有加載出來的問題

react 圖片沒有加載出來的問題 我原來是這樣寫的 <Layout><Sider><imgsrc"../images/login/topdivbg20221202.png"/></Sider><Content><Menu onClick{onClick} selectedKeys{[current]} mode"horizontal" it…

RustGUI學習(iced/iced_aw)之擴展小部件(十六):如何使用菜單menu部件來創建菜單欄?

前言 本專欄是學習Rust的GUI庫iced的合集,將介紹iced涉及的各個小部件分別介紹,最后會匯總為一個總的程序。 iced是RustGUI中比較強大的一個,目前處于發展中(即版本可能會改變),本專欄基于版本0.12.1. 概述 這是本專欄的第十六篇,主要講述menu菜單部件的使用,會結合實…

如何進行事務處理

1、問題背景 在數據庫存儲系統中&#xff0c;事務處理是一種保證多個數據庫操作作為單個邏輯單元執行的技術。事務處理可以確保數據的一致性、完整性和隔離性。 在使用 Google Cloud Datastore 時&#xff0c;可以使用 datastore.transaction() 函數來進行事務處理。datastor…

水離子霧化壁爐與會所房間的氛圍搭配

水離子霧化壁爐在會所房間的氛圍搭配可以為房間增添舒適、溫馨和現代感&#xff0c;以下是一些建議&#xff1a; 主題定位&#xff1a; 根據會所房間的主題和定位選擇合適的水離子霧化壁爐款式和設計風格。可以是現代簡約、歐式古典或是豪華奢華&#xff0c;確保與房間整體風格…

富唯智能復合機器人:CNC鋁塊上下料安全新標準

在CNC鋁塊加工過程中&#xff0c;上下料環節的安全問題一直是企業關注的焦點。富唯智能復合機器人的應用&#xff0c;為這一環節樹立了新的安全標準。 傳統的上下料方式往往依賴于人工操作&#xff0c;存在著較大的安全隱患。而富唯智能復合機器人采用先進的視覺識別技術和精準…

本機搭建RabbitMQ

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 目錄 一、下載安裝包&#xff0c;搭建過程 二、重要概念介紹 三、創建用戶 方式一&#xff1a;命令行 方式二&#xff1a;管理后臺 3.1 創建用戶 3.2 分配權限 3.3 提…

2024/5/15 英語每日一段

Many pet owners are now turning to pet insurance policies to avoid higher vet bills should something bad happen unexpectedly. But Carlson said that preventive veterinary care—like vaccination, parasite control and weight management—is "the best way …

工作高效記事軟件是什么 好用的高效記事軟件

陽光斜灑在辦公桌上&#xff0c;我埋頭于一堆雜亂的文件中&#xff0c;頭腦里充斥著各種待辦事項。電話鈴聲突然響起&#xff0c;是老板打來的&#xff0c;提醒我下午三點有個重要會議。掛斷電話后&#xff0c;我趕緊拿起筆想在便簽上記下&#xff0c;卻發現桌面已經被各種便簽…

詳解NodeJS事件循環

官網&#xff1a;node官網-事件循環 瀏覽器中的事件循環是由HTML規范來定義&#xff0c;之后由各瀏覽器廠商實現的&#xff0c;而node中的事件循環的定義與實現均由libuv引擎完成。 node使用chrome v8引擎作為js解釋器&#xff0c;v8引擎分析代碼后&#xff0c;主線程立即執行…

立創EDA繪制PCB電路板

1、繪制好原理圖后&#xff0c;點擊設計---原理圖轉PCB&#xff0c;生成PCB文件 2、將元器件拖入電路板方框內&#xff0c;擺放布局并使用工具欄布線、放置過孔及絲印 3、然后頂層和底層鋪銅 4、后面就可以生成制板文件發送嘉立創制板了。

Redis 本機無法訪問

問題 我在服務器上有兩個 Redis 實例&#xff0c;服務端口號分別是 6379 和 6380&#xff0c;Redis 服務器地址假設為 10.0.0.12。其中 6379 這個實例不需要密碼即可訪問&#xff0c;6380 需要密碼訪問。 在正常使用幾天后&#xff0c;本機突然無法訪問 6379 這個實例&#x…

springboot 定時任務解決方案

Scheduled (springboot 自帶的 注解) 基于注解Scheduled默認為單線程&#xff0c;開啟多個任務時&#xff0c;任務的執行時機會受上一個任務執行時間的影響。 EnableScheduling注解&#xff1a; 在配置類上使用&#xff0c;開啟計劃任務的支持&#xff08;類上&#xff09;。…

羊大師,羊奶真不錯

羊大師&#xff0c;羊奶真不錯 在眾多乳制品中&#xff0c;羊奶以其獨特的營養價值和美味口感贏得了人們的青睞。今天&#xff0c;小編羊大師想與大家分享羊奶的種種優點&#xff0c;讓我們一同領略它的魅力。 羊奶的營養價值極高。它含有豐富的蛋白質、脂肪、礦物質和維生素&…

無獨立顯卡如何安裝Pytorch

以前我是直接在colab中使用pytorch&#xff0c;非常方便&#xff0c;今天折騰了一上午&#xff0c;終于搞定了pytorh的安裝和環境設置&#xff0c;分享下我的安裝流程&#xff0c;遇到的問題和解決方案。 1. 用pip安裝Pytorch 打開cmd窗口&#xff08;按win R&#xff09;&a…