mysql的槽 MySQL體系結構

2021-10-18 11:46:35 字數 1615 閱讀 6526

mysql體系結構:分為毗鄰模子、伺服器組成、邏輯結構、物理結構、例項、儲存底層結構(段|區|快);

#1、毗鄰模子

客戶端和服務端cs模子,有以下兩種毗鄰方式:tcp/ip  、socket

#2、邏輯結構(邏輯工具)

mysql的邏輯工具:作為管理員或者開發人員操作的工具

庫(database,schema) linux中的目錄

庫名,庫屬性 目錄名,屬性

表(table) linux中的檔案

表名字,列(列名字,列屬性),表屬性,表資料 檔名,屬性,資料行

庫:庫連可以包羅多張表

表:二維表

列結構:列名字+列界說(約束)

資料行元資料和真實資料行:

元資料:列+其他的一些屬性(行數+占用空間鉅細+許可權)

列:列名+資料型別+其他約束(非空、唯

一、逐漸、非負數、自增進、預設值

#3、物理結構

庫: 在盤上就是乙個目錄

表: 使用多個檔案儲存表的資訊

彌補說明:

## mysql的儲存引擎是若何把資料存在磁碟上的?

mysql資料最底層的是作業系統上的乙個檔案

1、對於mysql來講,最底層(物理層)是資料檔案,也是儲存引擎層打交道的工具是資料檔案

2、儲存引擎分為許多種類

和linux檔案系統型別一樣,分為許多種類;

對於差別的儲存引擎,它的儲存機制不一樣

3、差別儲存引擎區別:

儲存方式:導致了安全性、效能的差別

舉例:## no1: myisam 儲存引擎儲存方式(系統預設引擎)

-rw-rw---- 1 mysql mysql 10684 nov 5 23:21 user.frm 一部分表結構資訊

-rw-rw---- 1 mysql mysql 436 nov 5 23:21 user.myd 行紀錄,真實資訊

-rw-rw---- 1 mysql mysql 2048 nov 5 23:21 user.myi 索引資訊

注:myisam是使用三個檔案存一張表

彌補說明:二進位制檔案內容怎麼檢視: strings 檔名

## no2: innodb 儲存引擎儲存方式(推薦使用引擎)

進入mysql的test資料庫,建立乙個oldboy表

mysql

use test;

create table oldboy(id int);

退出資料庫,進入下面目錄

-rw-rw---- 1 mysql mysql 8556 nov 6 20:56 oldboy.frm

-rw-rw---- 1 mysql mysql 98304 nov 6 20:56 oldboy.ibd

注:innodb是兩個檔案存一張表

#4、例項

mysql資料庫掛了系統 = 例項 + 資料

例項 = mysqld後台守護歷程 + master thread(主線程) + write thread(事情執行緒)

#5、儲存底層結構–段|區|塊

頁:(page ==16k) mysql儲存最小分配單元

區:乙個或多個延續的也組成(解決頁分配不延續的問題)

段:多個區組成,我們可以把一張表(非分割槽表)認為是乙個段

mysql許可權層級體系 MySQL許可權體系介紹

官方手冊 mysql是乙個多使用者的資料庫,mysql的使用者可以分為兩大類 1 超級管理員使用者 root 擁有全部許可權 2 普通使用者,由root建立,普通使用者只擁有root所分配的許可權 mysql 的許可權體系大致分為5個層級 一 全域性層級 全域性許可權適用於乙個給定伺服器中的所有資料...

MySQL架構體系

了解mysql必須牢牢記住其體系結構圖,mysql是由sql介面,解析器,優化器,快取,儲存引擎組成的 connectors指的是不同語言中與sql的互動 management serveices utilities 系統管理和控制工具 connection pool 連線池。管理緩衝使用者連線,執...

MySQL許可權體系

1 mysql許可權體系 mysql 的許可權體系大致分為5個層級 全域性層級 全域性許可權適用於乙個給定伺服器中的所有資料庫。這些許可權儲存在mysql.user表中。grant all on 和revoke all on 只授予和撤銷全域性許可權。資料庫層級 資料庫許可權適用於乙個給定資料庫中的...