首先我們先看一下語句
我們最直**到的就是執行這條語句後產生的結果,是一張表,這張表其實起就是mysql中產生的邏輯結構,這些表是用庫來存放的
對於當前表來說,user表就是存放在mysql庫中
庫(database、schema),相當於linux檔案系統中的目錄的概念,庫中可以包含多張表
表:二維表
邏輯結構總結:
"""庫 ----> 表
|元資料 + 資料行
|列 + 其他屬性(行數,占用空間大小,許可權)
|列名 + 資料型別 + 其他約束(非空\唯一\主鍵\非負數\自增長\預設值)
1、對於mysql來說,mysql的最底層是資料檔案(這三個檔案),也就是儲存引擎打交道的是物件是資料檔案。下一層是作業系統,下一層是磁碟,磁軌、扇區、顆粒
2、儲存引擎分為了很多種類
3、不同儲存引擎區別:儲存方式、安全性、效能
myisam:
-rw-rw----. 1 mysql mysql 10684 9月 24 17:51user.frm-rw-rw----. 1 mysql mysql 628 9月 24 18:29user.myd
-rw-rw----. 1 mysql mysql 2048 9月 24 18:38 user.myi
"""innodb:user.frm: 稱為表的結構資訊,結構資訊就是列屬性的一部分
user.myd: 行記錄,真實資料
user.myi: 索引
"""
-rw-rw----. 1 mysql mysql 8586 9月 24 18:29kkk.frm-rw-rw----. 1 mysql mysql 98304 9月 24 18:38 kkk.ibd
"""1、段、區、塊kkk.frm: 表結構
kkk.ibd: 表資料
對於mysql層來說,aaa.ibd檔案就是mysql的最底層
對於作業系統來說,aaa.ibd檔案就是邏輯層面的概念,檔案系統對於作業系統來說就是最底層
對於硬體來講,block塊(檔案系統)是邏輯概念,對於它自己來講,柱面\扇區\磁軌是邏輯層,真正儲存在磁軌上可磁化的金屬顆粒
"""
mysql是要把表記錄存在ibd上,但是沒有辦法直接用ibd
頁:mysql儲存的最小單元,頁的大小為16k,類似於block
將乙個ibd檔案劃分為多個頁
如果10條記錄需要兩個頁儲存,那麼追加10行,還需要2頁,因為都是操作的一張表,應該讓這四頁順序的,但是中間有其他操作,現在前兩個頁和後兩個頁不是順序的了,怎麼辦?
如果第一次需要兩個頁,mysql在分配時,會一次性多分配些,構成乙個區。
區: 也就是連續的多個頁,就是乙個區
段: 段就是多個區,可以理解為一張表
mongodb初級學習之邏輯結構和物理結構
前面些了怎麼安裝,那麼安裝好以後就可以對mongodb進行一些初級的認識。mongodb也分邏輯結構和物理結構,那麼這裡先介紹下邏輯結構 1 邏輯結構主要由database collection document組成,這裡是層次結構。2 多個文件組成集合,多個集合組成資料庫,多個資料庫組成mongo...
02MySQL中的資料型別
一 數值 intdecimal 準確的小數值 float double 二 字串型別 char m 此資料型別用於表示固定長度的字串,可以包含最多達255個字元,其中m代表字串的長度。長度固定,查詢的時候就比較快。定長,簡單粗暴,浪費空間,訪問速度快。varchar m 此資料型別用於可變長的字串,...
番外02 MySQL的資料型別
型別大小 範圍 有符號 範圍 無符號 用途tinyint 1 位元組 128,127 0,255 小整數值 smallint 2 位元組 32 768,32 767 0,65 535 大整數值 mediumint 3 位元組 8 388 608,8 388 607 0,16 777 215 大整數值...