配置文件
在命令行中設置的啓動的選項只對當次啓動生效,每次啓動時,需要重複把這些寫到啓動命令行中。
我們把每次需要設置的啓動選項寫在配置文件中,每次服務器啓動時都從這個文件中加載相應的啓動選項,我們只需配置一次即可。
在配置文件中,不同的選項組是給不同的程序使用的,若選項組名稱與程序名稱相同,則組中的選項專門應用於該程序。例如:
[mysqld]
組用於mysql
服務器;
[mysql]
組用於客戶端程序;
下面兩個比較特殊:
[server]
組下面的啓動選項作用於所有的服務器程序;
[client]
組下面的啓動選項將用於所有的客戶端程序;
程序對應的類別和能讀取的組
程序名 | 類別 | 能讀取的組 |
---|---|---|
mysqld | 啓動服務器 | [mysqld]、[server] |
mysqld_safe | 啓動服務器 | [mysqld]、[server] 、[mysqld_safe] |
mysql.server | 啓動服務器 | [mysqld]、[server] 、[mysql.server] |
mysql | 啓動客戶端 | [mysql]、[client] |
mysqladmin | 啓動客戶端 | [mysqladmin]、[client] |
mysqldump | 啓動客戶端 | [mysqldump]、[client] |
系統變量
mysql服務器程序運行過程中會用到很多影響程序行爲的變量,稱爲系統變量。
通過下列命令查看當前服務器支持的系統變量以及它的值。
show variables [like 匹配的模式];
設置系統變量有以下兩種方式:
1.通過啓動選項設置
(1)通過命令行,如:
mysqld --default-storage-engine=MyISAM --max-connections=10
(2) 通過配置文件
在配置文件中填寫,如:
[server]
default-storage-engine=MyISAM
max-connections=10
2.服務器程序運行過程中設置
首先介紹以下兩種作用範圍;
GLOBAL(全局範圍):影響服務器的整體操作。
SESSION(會話範圍):影響某個客戶端連接的操作。
在運行時使用set語句修改,
一種是 SET[GLOBAL|SESSION]系統變量名=值;
一種是 SET[@@(GLOBAL|SESSION).]系統變量名=值;
例如:
想讓新連接到服務器的客戶端都用MyISAM作爲默認的存儲引擎;
SET GLOBAL default-storage-engine=MyISAM;
或者
SET @@GLOBAL.default-storage-engine=MyISAM;