日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 存储引擎接口_MySQL体系结构和存储引擎

發布時間:2024/9/19 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 存储引擎接口_MySQL体系结构和存储引擎 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數據庫與傳統文件系統最大的區別在于數據庫是支持事務的

一、定義數據庫與實例

1、數據庫:

物理操作系統的文件或者其他文件類型的集合,依照某種數據模型組織起來并存儲于二級存儲器中的數據集合。

2、實例:

MySQL數據庫由一個后臺進程以及一個共享區域組成,是程序,是位于用戶與操作系統之間的一層數據管理軟件,用戶對數據庫數據的任何操作,包括數據定義、數據查詢、數據維護、數據運行控制等都是在數據庫實例下進行的,應用程序只有通過數據庫實例才能和數據庫打交道。

*:在集群情況下,可能出現一個數據庫多個實例的情況;

MySQL被設計成為一個單進程多線程架構的數據庫;

MySQL數據庫實例在系統上表現就是一個進程。

二、MySQL體系結構

MySQL由以下幾個部分組成

①連接池組件 ②管理服務與工具組件 ③sql接口組件 ④查詢分析器組件

⑤優化器組件 ⑥緩沖組件 ⑦插件式存儲引擎 ⑧物理文件

三、存儲引擎

MySQL數據庫區別于其他數據庫的最重要的一個特點是它的插件式表存儲引擎,存儲引擎是基于表,而不是基于數據庫的。

存儲引擎的好處在于,可以根據業務的需要選擇不同特點的存儲引擎,從而達到目的。

幾個常見的存儲引擎:

1、InnoDB存儲引擎

①最重要的一個特點在于“支持事務”。其設計目標面向在線事務處理(OLTP)的應用。

②將數據存儲在一個邏輯的表空間中,這個表空間就像黑盒一樣由該存儲引擎自行管理。

③通過使用多版本并發控制(MVCC)來獲得高并發性。

④提供了插入緩沖、二次寫、自適應哈希索引、預讀等高性能和高可用功能。

⑤采用了“聚集”的方式,因此每張表的存儲都是按照主鍵順序進行存放,若沒有顯示的定義主鍵,則該存儲引擎會為每一行生成一個6字節的ROWID,并以此為主鍵。

2、MyISAM存儲引擎

①MyISAM“不支持事務”、表鎖設計、“支持全文索引”,主要面向一些OLAP數據應用。

②MyISAM表由MYD和MYI組成,MYD用來存放數據文件,MYI用來存放索引文件。

③對于MyISAM存儲引擎表,MySQL數據庫只緩存其索引文件,數據文件的緩存交給操作系統本身完成。

3、Maria存儲引擎

①新開發的引擎,設計目標主要是用來取代MyISAM

②支持緩存數據和索引文件,應用了行鎖設計,提供了MVCC功能,支持事務與非事務的安全選項,以及更好的BLOB字符類型的處理性能。

4、NDB存儲引擎

①是一個集群存儲引擎。

②數據全部放在內存中(從MySQL5.1 版本之后可以將非索引文件存放在磁盤),因此主鍵查詢非常快,并且通過天劍NDB數據存儲節點可以線性地提高數據庫性能,是一個高可用、高性能的集群系統。

③NDB存儲引擎的連接操作時在MYSQL數據庫層完成的,而不是在存儲引擎層,所以,復雜的連接操作需要巨大的網絡開銷,因此查詢速度非常慢。如果解決了這個問題,NDB存儲引擎的市場應該是巨大的。

5、Memory存儲引擎

①表中的數據存儲在內存中,如果數據庫重啟或者宕機,數據就會消失。適合存放臨時數據。

②速度雖快,但是只支持表鎖,并發性能差,并且不支持TEXT和BLOB列的類型,最重要的是存儲變長字段(vachar)時事按照定長字段(char)方式進行的,因此浪費內存。

三、連接MySQL的幾種方式

1、TCP\IP

2、命名管道和共享內存

3、UNIX域套接字

總結

以上是生活随笔為你收集整理的mysql 存储引擎接口_MySQL体系结构和存储引擎的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。