MySQL是一個開源的關系型數據庫管理系統,它支持多用戶、多線程和多個客戶端。對于開發者來說,掌握MySQL的存放表數據位置是非常重要的。那么,MySQL存放的表數據到底存放在哪里呢?
MySQL存放表數據的位置在文件系統中。當我們在MySQL中創建了一個表,MySQL會自動地創建一個表空間來存放該表的數據。這個表空間所對應的文件,就是我們常說的數據文件。一個MySQL實例可以擁有多個數據庫,每個數據庫可以包含多個表,每個表可以存儲多個行數據。數據文件會在MySQL啟動時自動打開,這樣我們就可以對其中的數據進行讀寫操作。
MySQL的數據文件是有多個文件組成的。每個文件都有自己的固定大小,一般稱為頁大小(page size),默認情況下,MyISAM引擎的頁大小是8KB,InnoDB引擎的頁大小是16KB。在每個數據文件中,會被劃分為等同大小的頁,每個頁都會被分配一個頁號,用來標識該頁。數據文件可以持有多個頁,每個頁都可以存儲若干個行數據。當系統需要訪問一個表數據時,它會根據相應的頁號找到對應的頁,從而找到該頁所對應的若干個行數據。
MySQL數據文件的默認存放位置如下: /data/mysql/ ├── data/ # 數據庫數據目錄 │ ├── mysql/ # 存放MySQL系統數據 │ └── test/ # 一個示例數據庫 └── log/ # MySQL日志目錄
在默認情況下,MySQL的數據文件存儲在/data/mysql/data目錄下,我們可以在該目錄下查看所有數據庫和表的數據存儲文件。對應每個數據庫的名稱,都有一個獨立的目錄,其下每個表都有一個.ibd文件,這個文件就是該表的數據文件。
下一篇mysql 時分秒轉秒