MySQL資料庫的文件們

MySQL的文件們

 

日志文件

日志文件默認位於data目錄下

long_query_time=2
log-slow-queries= 
log-error=
log= C:\log.log
log-bin= 

 

 

mysql-bin.index 文件(binary log index)的功能是記錄所有Binary Log 的絕對路徑,保證MySQL 各種線程能夠順利的根據它找到所有需要的Binary Log 文件。

 

數據文件

1、“.frm”文件

與表相關的元數據(meta)信息都存放在“.frm”文件中,包括表結構的設定信息等。不論是什麼存儲引擎,每一個表都會有一個以表名命名的“.frm”文件。所有的“.frm”文件都存放在所屬資料庫的文件夾下面。

2、“.MYD”文件

“.MYD”文件是MyISAM 存儲引擎專用,存放MyISAM 表的數據。每一個MyISAM 表都會有一個“.MYD”文件與之對應,同樣存放於所屬資料庫的文件夾下,和“.frm”文件在一起。

3、“.MYI”文件

“.MYI”文件也是專屬於MyISAM 存儲引擎的,主要存放MyISAM 表的索引相關信息。對於MyISAM 存儲來說,可以被cache 的內容主要就是來源於“.MYI”文件中。每一個MyISAM表對應一個“.MYI”文件,存放於位置和“.frm”以及“.MYD”一樣。

4、“.ibd”文件和ibdata 文件

這兩種文件都是存放Innodb 數據的文件,之所以有兩種文件來存放Innodb 的數據(包括索引),是因為Innodb 的數據存儲方式能夠通過配置來決定是使用共享表空間存放存儲數據,還是獨享表空間存放存儲數據。獨享表空間存儲方式使用“.ibd”文件來存放數據,且每個表一個“.ibd”文件,文件存放在和MyISAM 數據相同的位置。如果選用共享存儲表空間來存放數據,則會使用ibdata 文件來存放,所有表共同使用一個(或者多個,可自行配置)ibdata 文件。ibdata 文件可以通過innodb_data_home_dir 和innodb_data_file_path兩個參數共同配置組成, innodb_data_home_dir 配置數據存放的總目錄, 而innodb_data_file_path 配置每一個文件的名稱。當然, 也可以不配置

innodb_data_home_dir 而直接在innodb_data_file_path 參數配置的時候使用絕對路徑來完成配置。innodb_data_file_path 中可以一次配置多個ibdata 文件。文件可以是指定大小,也可以是自動擴展的,但是Innodb 限制瞭僅僅隻有最後一個ibdata 文件能夠配置成自動擴展類型。當我們需要添加新的ibdata 文件的時候,隻能添加在innodb_data_file_path配置的最後,而且必須重啟MySQL 才能完成ibdata 的添加工作。不過如果我們使用獨享表空間存儲方式的話,就不會有這樣的問題,但是如果要使用裸設備的話,每個表一個裸設備,可能造成裸設備數量非常大,而且不太容易控制大小,實現比較困難,而共享表空間卻不會有這個問題,容易控制裸設備數量。我個人還是更傾向於使用獨享表空間存儲方式。

切換資料庫使用的引擎

CREATE TABLE 表名

(

 字段……

 ) ENGINE=InnoDB

 

如果還不行,就直接到MySQL目錄裡的my.ini文件中把default-storage-engine這一行改過來,把默認的存儲引擎改為InnoDB,重啟資料庫伺服器就行瞭。

 

Replication

 

 

1、master.info 文件:

master.info 文件存在於Slave 端的數據目錄下,裡面存放瞭該Slave 的Master 端的相關信息,包括Master 的主機地址,連接用戶,連接密碼,連接端口,當前日志位置,已經讀取到的日志位置等信息。

2、relay log 和relay log index

mysql-relay-bin.xxxxxn 文件用於存放Slave 端的I/O 線程從Master 端所讀取到的Binary Log 信息,然後由Slave 端的SQL 線程從該relay log 中讀取並解析相應的日志信息,轉化成Master 所執行的SQL 語句,然後在Slave 端應用。mysql-relay-bin.index 文件的功能類似於mysql-bin.index ,同樣是記錄日志的存放位置的絕對路徑,隻不過他所記錄的不是Binary Log,而是Relay Log。

3、relay-log.info 文件:

類似於master.info,它存放通過Slave 的I/O 線程寫入到本地的relay log 的相關信息。供Slave 端的SQL 線程以及某些管理操作隨時能夠獲取當前復制的相關信息。

 

pid file  conf file  socket file

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。