自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MySQL數(shù)據(jù)庫存儲引擎之MyISAM和InnoDB的區(qū)別對比

數(shù)據(jù)庫 MySQL
MySQL有多種存儲引擎,MyISAM和InnoDB是其中常用的兩種。本文我們主要就介紹MyISAM和InnoDB的基礎概念以及它們之間的一些區(qū)別,希望本次的介紹能夠對您有所幫助。

MySQL數(shù)據(jù)庫存儲引擎是本文我們主要要介紹的內(nèi)容,它包括:MyISAMInnoDB,其中MyISAM是MySQL的默認存儲引擎,基于傳統(tǒng)的ISAM類型,支持全文搜索,但不是事務安全的,而且不支持外鍵。每張MyISAM表存放在三個文件中:frm 文件存放表格定義;數(shù)據(jù)文件是MYD (MYData);索引文件是MYI (MYIndex)。

InnoDB是事務型引擎,支持回滾、崩潰恢復能力、多版本并發(fā)控制、ACID事務,支持行級鎖定(InnoDB表的行鎖不是絕對的,如果在執(zhí)行一個SQL語句時MySQL不能確定要掃描的范圍,InnoDB表同樣會鎖全表,如like操作時的SQL語句),以及提供與Oracle類型一致的不加鎖讀取方式。InnoDB存儲它的表和索引在一個表空間中,表空間可以包含數(shù)個文件。

主要區(qū)別:

MyISAM是非事務安全型的,而InnoDB是事務安全型的。

MyISAM鎖的粒度是表級,而InnoDB支持行級鎖定。

MyISAM支持全文類型索引,而InnoDB不支持全文索引。

MyISAM相對簡單,所以在效率上要優(yōu)于InnoDB,小型應用可以考慮使用MyISAM。

MyISAM表是保存成文件的形式,在跨平臺的數(shù)據(jù)轉移中使用MyISAM存儲會省去不少的麻煩。

InnoDB表比MyISAM表更安全,可以在保證數(shù)據(jù)不會丟失的情況下,切換非事務表到事務表(alter table tablename type=innodb)。

應用場景:

MyISAM管理非事務表。它提供高速存儲和檢索,以及全文搜索能力。如果應用中需要執(zhí)行大量的SELECT查詢,那么MyISAM是更好的選擇。

InnoDB用于事務處理應用程序,具有眾多特性,包括ACID事務支持。如果應用中需要執(zhí)行大量的INSERT或UPDATE操作,則應該使用InnoDB,這樣可以提高多用戶并發(fā)操作的性能。

常用命令:

1.看表的存儲類型(三種):

 

  1. show create table tablename  
  2. show table status from  dbname  where name=tablename 
  3. mysqlshow  -u user -p password --status dbname tablename  
  4.  

 

2.修改表的存儲引擎:

 

  1. alter table tablename type=InnoDB 

 

3.啟動mysql數(shù)據(jù)庫的命令行中添加以下參數(shù)使新發(fā)布的表都默認使用事務:

  1. default-table-type=InnoDB 

 

4.臨時改變默認表類型:

 

  1. set table_type=InnoDB 
  2. show variables like 'table_type' 

 

關于MySQL數(shù)據(jù)庫的存儲引擎MyISAM和InnoDB的知識就介紹到這里了,希望本次的介紹能夠對您有所收獲。

【編輯推薦】

  1. 適合初學者的MySQL學習筆記之庫操作示例
  2. 適合初學者的MySQL學習筆記之表操作示例
  3. 適合初學者的MySQL學習筆記之MySQL管理心得
  4. 適合初學者的MySQL學習筆記之MySQL查詢示例
  5. 適合初學者的MySQL學習筆記之管理員常用操作總結
責任編輯:趙鵬 來源: 博客園
相關推薦

2018-09-05 13:14:54

MySQLInnoDBMyISAM

2010-11-23 11:27:53

MySQL MyISA

2019-06-11 16:11:16

MySQLMyISAMInnoDB

2010-05-21 16:10:28

2018-06-14 10:44:59

MySQLMyISAMInnoDB

2010-05-11 15:06:24

MySQL MyISA

2010-05-21 16:23:52

MySQL MyISA

2009-05-19 09:58:41

MyISAMInnoDB存儲引擎

2009-05-05 10:19:37

存儲引擎InnoDBMyISAM

2011-03-01 11:21:11

MySQL數(shù)據(jù)庫存儲引擎

2011-03-02 12:57:08

MySQL存儲引擎分支現(xiàn)狀

2010-05-21 15:53:30

2010-05-14 17:44:47

MySQL數(shù)據(jù)庫

2012-03-20 11:16:24

MySQLMyISAM

2019-12-12 10:38:10

mysql數(shù)據(jù)庫nnodb

2018-01-19 12:33:17

數(shù)據(jù)庫OracleMySQL

2010-11-22 13:45:43

MySQL表存儲結構

2018-05-14 10:56:36

MySQL數(shù)據(jù)庫存儲

2022-08-10 14:03:01

MySQL數(shù)據(jù)庫存儲

2017-04-24 11:01:59

MySQL數(shù)據(jù)庫架構設計
點贊
收藏

51CTO技術棧公眾號