首頁  >  文章  >  資料庫  >  mysql的表怎麼看存在哪裡了

mysql的表怎麼看存在哪裡了

WBOY
WBOY原創
2022-05-19 15:56:347631瀏覽

在mysql中,可以利用show語句配合datadir來查看表格資料存放在哪裡,datadir是資料目錄對應的系統變量,語法為「show variables like 'datadir';」;透過這個指令可以查看資料目錄儲存的具體位置。

mysql的表怎麼看存在哪裡了

本教學操作環境:windows10系統、mysql8.0.22版本、Dell G3電腦。

mysql的表怎麼看存在哪裡了

我們都知道,MySQL需要支援持久化,它把資料儲存在磁碟中,在作業系統中會把管理磁碟的裝置叫做文件系統,對於我們研發而言,我們大多數只會關心MySQL的索引、SQL效能最佳化,而對於資料是怎麼儲存、存在哪裡這類問題就像是一個黑盒子。

1 資料儲存在檔案系統

我們常用的儲存引擎InnoDB都是把表格儲存在檔案系統上的(即磁碟),當需要讀取數據時,InnoDB會從檔案系統中把資料讀取出來回傳給我們;當需要寫入資料時,InnoDB又會把資料寫回檔案系統中,那麼InnoDB儲存引擎的資料是如何在檔案系統中儲存的呢?

2 MySQL資料目錄

MySQL伺服器在啟動時,會從檔案系統的某個目錄載入文件,執行時產生的資料也會寫入儲存到檔案系統的這個目錄中,這個目錄就是資料目錄

2.1 MySQL資料目錄在哪

MySQL資料目錄對應一個系統變數datadir , 可以透過該指令查看資料目錄儲存的具體位置:

show variables like 'datadir';

也就是說我本機的MySQL的資料目錄就在/usr/local/mysql/data/

3 資料目錄的結構

我們知道,MySQL在運行過程中會產生的資料包括:我們創建的資料庫、表格、視圖、伺服器等,此外還有MySQL為了程式更好運作而創建的額外數據,接下來,我們具體來看下數據目錄下的內容~

3.1 資料庫在檔案系統中的表示

當我們執行create database mydb 語句來建立一個資料庫時,MySQL會做兩個工作:

在資料目錄下建立一個和資料庫名稱同名的資料夾mydb

#在mydb下建立一個名為db.opt的文件,這個檔案包含了這個資料庫的各種屬性,像是資料庫的字元集、比較規則之類的

目前,透過執行show databases指令,可以查看到

我本機建立了的資料庫有:

mysql的表怎麼看存在哪裡了

然後我進入目錄/usr/local/mysql/data/ 下查看是不是會有上面的這些資料夾:

mysql的表怎麼看存在哪裡了

的確,高亮的資料夾就一一對應了MySQL中的資料庫。不過如果仔細看的話,information_schema其實是不存在的,由於它比較特殊,所以MySQL的設計者對它的實作進行了特殊對待,因此沒有對應的資料庫目錄。

推薦學習:mysql影片教學

#

以上是mysql的表怎麼看存在哪裡了的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn