MySQL之儲存引擎

2021-08-10 06:46:55 字數 1131 閱讀 5118

1.檢視某個資料表的命令

show create table tbl_name

mysql可以將資料以不同的技術儲存在檔案(記憶體)中,這種技術就稱為儲存引擎。每一種儲存引擎使用不同的儲存機制、索引技巧、鎖定水平,最終提供廣泛且不同的功能。

mysql支援的儲存引擎有:myisam(適用於事物的處理不多的情況)、innodb(適用於事物處理比較多,需要有外來鍵支援的情況)、memory、csv、archive

2.併發控制:當多個連線對記錄進行修改儲存時保證資料的一致性和完整性的技術。 

3.鎖1)共享鎖(讀鎖):在同一時段內,多個使用者可以讀取同乙個資源,讀取過程中資料不會發生任何變化。

2)排它鎖(寫鎖):在任何時候只能有乙個使用者寫入資源,當進行寫鎖是會阻塞其他的讀鎖或者寫鎖操作。

鎖的力度(鎖的顆粒:鎖定時的單位):

表鎖,是一種開銷最小的鎖策略。得到資料表的寫鎖(禁止其他使用者進行讀寫,只能有乙個鎖)

行鎖,是一種開銷最大的鎖策略。並行性最大(有多少條記錄,就有可能對每條記錄都進行鎖)

表鎖的開銷最小,因為使用鎖的個數最小,行鎖的開銷最大,因為可能使用鎖的個數比較多

4.事務處理

事務用於保證資料庫的完整性,四個特性:原子性(

atomicity)、一致性(

consistency)、隔離性(

solation)、永續性(

durability);

5.索引

對資料表中一列或多列的值進行排序的一種結構。

6.儲存引擎的特點

csv由逗號分隔的儲存引擎,會在資料庫的子目錄裡為每乙個表建立乙個.csv的檔案,

是一種普通的文字檔案。每乙個資料行占用乙個文字行。csv不支援索引

7.修改儲存引擎的方法

1)通過修改mysql配置檔案實現:default-storage-engine=引擎名;

2)create table table_name(

... ..

)engine=引擎名;

3)通過修改資料表命令實現:alter table table_name engine [=] engine_name;

Mysql 儲存引擎之 MyISAM儲存引擎

myisam是預設儲存引擎。每個myisam在磁碟上儲存成三個檔案。frm檔案儲存表定義 myd檔案儲存資料 myi檔案儲存索引。要明確表示你想要用乙個myisam 請用engine表選項指出來 create table test myisam id int engine myisam 2 如下是m...

MySQL之儲存引擎

這幾天研習mysql資料庫的儲存引擎,以便能更深層次的掌握mysql這個優秀的資料庫。首先,mysql資料庫獨有的外掛程式式儲存引擎架構使得它有別於其他任何資料庫,其中不同的儲存引擎有著完全不同的功能和效能。mysql表儲存引擎主要有 innodb儲存引擎,myisam儲存引擎,ndb儲存引擎,me...

MySql之儲存引擎

和大多數的資料庫不同mysql中有乙個儲存引擎的概念針對不同的儲存需求可以選擇最優的儲存引擎。儲存引擎就是儲存資料,建立索引,更新查詢資料等等技術的實現方式。儲存引擎是基於表的,而不是基於庫的。所以儲存引擎也可被稱為表型別。oracle,sqlserver等資料庫只有一種儲存引擎。mysql提供了外...