1. 收集預設的目錄: 介面 init_default_directories();
主要是下面的目錄:
"/etc/"
"/etc/mysql/"
環境變數中設定的: mysql_home
當前使用者的home目錄 : "~/"
2. 如果命令列引數中有"--no-defaults"選項, 則將"--no-defaults"選項直接從現有的命令列引數中去掉, 然後直接返回,即不去解析配置檔案。
3. 如果沒有"--no-defaults"選項, 則解析配置檔案: my_search_option_files()
檢查命令列中是否有: "--defaults-file="; "--defaults-extra-file="; "--defaults-group-suffix=";
a).如果有"--defaults-group-suffix="選項,則在預設的group後面新增帶字尾的group,
預設group:
const char *load_default_groups =
;如果字尾是
_a: "--defaults-group-suffix=
_a", 則所有的group將是
const char *load_default_groups = ;
b).如果有"--defaults-file="選項, 則只是從"--defaults-file="指定的配置檔案中讀取配置選項;
c). 如果沒有"--defaults-file="選項, 則從傳遞進來的" mysql_config_name
"my""加預設的字尾名檔案中去讀配置選項
d). 如果上面的都不成功,則從預設的目錄(即init_default_directories()中獲得的預設目錄中讀取配置檔案, 字尾一般是.cnf); 如果預設目錄為空(mysqld好像不為空, 其他可能為空), 則從"--defaults-extra-file="指定的檔案中讀取配置檔案。
mysql將配置檔案中的選項讀取以後,會將選項的前面加上"--",最後會將所有的配置檔案選項和命令列選項都做為命令列選項拷貝到argv中作為程式的選項。最後將選項賦給了defaults_argv和defaults_argc。
mysql簡單配置檔案 MySQL配置檔案
mysql配置檔案 在windows下是my.ini,而在linux下是my.cnf。基本引數 port 3306 埠號 server id 1 basedir c program files mysql mysql server 5.5 基準路徑,其他路徑都相對於這個路徑 datadir c pr...
配置檔案解析函式
config.h this file is usred for parsing configure file.e mail yhniejun 163.com 2007.01.25 mr.nie the struct of config file.struct conf info typedef st...
tinyxml解析配置檔案
一 tinyxml類簡單介紹 tinyxml實現的時dom訪問模型,因此提供了一系列的類對應xml檔案中的各個節點。主要類間的關係如下圖所示 tixmlbase 其他類的基類,是個抽象類 tixmldocument 表示整個xml文件,不對應其中某個特定的節點。tixmlelement 表示元素節點...