使用選項文件
大部分
MySql
程序可以從選項文件中讀取啟動選項喊衫,這些選項文件提供了一個便利的途徑來指定常用的選項,這樣就不必每次運行程序時在命令行上進(jìn)行輸入MySql
程序指定--no-defaults
選項阅爽,將僅讀取.mylogin.cnf
,而不會讀取其他選項文件
選項文件的優(yōu)先級
- 在
Windows
系統(tǒng)下,mysql
程序讀取的選項文件的順序如下表(先列出的文件先讀取更鲁,后讀取的文件具有更高的優(yōu)先級)
文件名 | 用途 |
---|---|
%WINDIR%\my.ini %WINDIR%\my.cnf
|
全局選項 |
C:\my.ini C:\my.cnf
|
全局選項 |
BASEDIR\my.ini BASEDIR\my.cnf
|
全局選項 |
defaults-extra-file |
The file specified with --defaults-extra-file , if any |
%APPDATA%\MySQL\.mylogin.cnf |
Login path options (clients only) |
DATADIR\mysqld-auto.cnf |
System variables persisted with SET PERSIST or SET PERSIST_ONLY (server only) |
%WINDIR%
路徑為C:\Windows
%APPDATA%
路徑為C:\Users\szn\AppData\Roaming
BASEDIR
與DATADIR
在mysql
安裝路徑下的my.ini
文件中進(jìn)行配置
選項文件的語法
? 以下描述的選項文件的語法不適用于.mylogin.cnf
及mysqld-auto.cnf
選項文件中指定選項的語法與命令行語法類似搬素,但是在選項文件中選項名稱前面的
--
需要被省略呵晨,并且每行只能指定一個選項選項文件中的空行將被忽略
行開頭與行結(jié)尾的空格將被忽略
-
#comment,;comment
- 注釋行以
#
或者;
開頭 -
#
注釋可以從行的中間開始
- 注釋行以
-
[group]
group
是要設(shè)置的選項的組或者程序的名稱直到遇見另一個
group
前,任何設(shè)定行都應(yīng)用于當(dāng)前group
如果
group
名與程序名相同熬尺,則組中的選項是專門應(yīng)用于該程序的摸屠,比如[mysqld]
應(yīng)用于mysqld
服務(wù),[mysql]
應(yīng)用于mysql
客戶端程序-
[client]
選項應(yīng)用于所有的client programs(不包括 mysqld 服務(wù))
[client] password=123456 [mysql] password=1234567
-
[mysql]
中的password
將覆蓋[client]
中的password - 若上述
[client]
組和[mysql]
組的順序進(jìn)行顛倒粱哼,那么將是[client]
組中的password
覆蓋[mysql]
組中的password
-
[mysqld-5.7]
季二、[mysqld-8.0]
分別作用于對應(yīng)版本的mysqld
服務(wù)
-
opt_name
- 等價于命令行中的
--opt_name
- 等價于命令行中的
-
opt_name=value
- 等價于命令行中的
--opt_name=value
- 在選項文件中,
=
兩邊支持空格揭措,這在命令行中是不允許的 - 可以將值包含在
'
或者"
中胯舷,當(dāng)值包含#
,這個方法就非常有用
- 等價于命令行中的
支持
!include
語法進(jìn)行包含其他文件绊含,細(xì)節(jié)不進(jìn)行考究