1. 程式人生 > >Mysql(二)mysql檔案認識

Mysql(二)mysql檔案認識

MySQL中檔案儲存形式(InnoDB)

  1. 日誌組檔案:

可以發現,./目錄下資料存在日誌組檔案: ib_logfile0和ib_logfile1,預設均為5M。

  1. 表結構檔案:*.frm

在MYSQL中建立任何一張資料表,在其資料存放目錄對應的資料庫目錄下都有對應表的.frm檔案,
.frm檔案是用來儲存每個資料表的元資料(meta)資訊,包括表結構的定義等,
在MySQL中,“.frm”檔案跟資料庫儲存引擎無關,任何儲存引擎的資料表結構檔案都儲存為.frm檔案,
命名方式為“tablename.frm”,如scores.frm,.frm檔案可以用來在資料庫崩潰時恢復表結構。

  1. 獨佔表空間檔案:*.ibd

在innodb_file_per_table配置為ON時設定為獨佔表空間,此時,系統將為每一個表單獨儲存為“.ibd”檔案,
(如scores.ibd)在此檔案中,儲存與該表相關的資料、索引、表的內部資料字典資訊。

  1. 字符集和排序規則檔案:db.opt

檔案中記錄了該庫的預設字符集編碼和字符集排序規則。如果你建立資料庫指定預設字符集和排序規則,
後續建立的表如果沒有指定字符集和排序規則,那麼該新建的表將採用db.opt檔案中指定的屬性。如果刪除這個db.opt,MySQL在建表時將參照全域性的字元設定,即default-character-set ,這個影響是在建表的時候才會有體現,你不在那個庫新建表,是沒什麼差異的。

  1. binlog二進位制日誌檔案:記錄主資料庫伺服器的DDL和DML操作。

在主從複製時,二進位制日誌檔案將通過Binlog Dump執行緒傳遞給從伺服器的I/O執行緒,
I/O執行緒獲取事件資料後傳遞給從伺服器的relaylog,然後在從伺服器重做一遍實行復制。