大多数支持选项文件的 MySQL 程序都处理以下选项。因为这些选项影响选项文件处理,因此它们必须在命令行上指定,而不是在选项文件中。为了正确工作,每个选项都必须在其他选项之前指定,以下情况除外:
-
--print-defaults
可以立即使用--defaults-file
、--defaults-extra-file
、--login-path
或--no-login-paths
之后。 -
在 Windows 上,如果服务器使用
--defaults-file
和--install
选项启动,--install
必须首先指定。请参阅 第 2.3.3.8 节,“以 Windows 服务形式启动 MySQL”。
在指定文件名作为选项值时,避免使用 ~
shell 元字符,因为它可能不会按预期方式解释。
表 6.3 选项文件选项摘要
Option Name | Description |
---|---|
--defaults-extra-file | 读取额外的选项文件 |
--defaults-file | 仅读取指定的选项文件 |
--defaults-group-suffix | 选项组后缀值 |
--login-path | 从 .mylogin.cnf 读取登录路径选项 |
--no-defaults | 不读取任何选项文件 |
--no-login-paths | 不从登录路径文件读取选项 |
-
--defaults-extra-file=
file_name
Command-Line Format --defaults-extra-file=filename
Type 文件名 Default Value [none]
在全局选项文件之后但(在 Unix 上)在用户选项文件之前(在所有平台上)在登录路径文件之前读取该选项文件。(有关选项文件使用顺序的信息,请参阅 第 6.2.2.2 节,“使用选项文件”。)如果文件不存在或不可访问,将发生错误。如果
file_name
不是绝对路径名,则相对于当前目录进行解释。请参阅本节的介绍,了解在何处指定该选项的约束。
-
Command-Line Format --defaults-file=filename
Type 文件名 Default Value [none]
仅读取指定的选项文件。如果文件不存在或不可访问,将发生错误。
file_name
相对于当前目录进行解释,如果给定为相对路径名而不是完整路径名。例外:即使使用
--defaults-file
,mysqld 仍然读取mysqld-auto.cnf
,客户端程序读取.mylogin.cnf
。请参阅本节的介绍,了解在何处指定该选项的约束。
-
Command-Line Format --defaults-group-suffix=string
Type 字符串 Default Value [none]
不仅读取通常的选项组,还读取具有通常名称和后缀
str
的组。例如, mysql 客户端通常读取[client]
和[mysql]
组。如果给出该选项为--defaults-group-suffix=_other
, mysql 也读取[client_other]
和[mysql_other]
组。 -
Command-Line Format --login-path=name
Type 字符串 Default Value [none]
从命名的登录路径文件中的
.mylogin.cnf
读取选项。一个 “登录路径” 是一个选项组,包含指定要连接的 MySQL 服务器和要身份验证的账户的选项。要创建或修改登录路径文件,请使用 mysql_config_editor 实用程序。见 第 6.6.7 节,“mysql_config_editor — MySQL 配置实用程序”。客户端程序读取对应命名登录路径的选项组,除了程序默认读取的选项组。考虑以下命令:
mysql --login-path=mypath
默认情况下, mysql 客户端读取
[client]
和[mysql]
选项组。因此,对于显示的命令, mysql 读取[client]
和[mysql]
从其他选项文件,并从登录路径文件读取[client]
、[mysql]
和[mypath]
。客户端程序甚至在使用
--no-defaults
选项时也读取登录路径文件,除非设置--no-login-paths
。要指定备用登录路径文件名,请设置
MYSQL_TEST_LOGIN_FILE
环境变量。见本节的介绍,关于在哪个位置指定该选项的约束。
-
Command-Line Format --no-login-paths
Type 布尔值 Default Value false
跳过从登录路径文件中读取选项。客户端程序总是读取登录路径文件,即使使用
--no-defaults
选项。见
--login-path
有关信息。见本节的介绍,关于在哪个位置指定该选项的约束。
-
Command-Line Format --no-defaults
Type 布尔值 Default Value false
不读取任何选项文件。如果程序启动失败是由于从选项文件中读取未知选项,
--no-defaults
可以用于防止它们被读取。异常是客户端程序读取
.mylogin.cnf
登录路径文件,如果它存在,即使使用--no-defaults
,除非设置--no-login-paths
。这允许以比命令行更安全的方式指定密码,即使存在--no-defaults
。要创建.mylogin.cnf
,请使用mysql_config_editor实用程序。见第 6.6.7 节,“mysql_config_editor — MySQL 配置实用程序”。 -
Command-Line Format --print-defaults
Type 布尔值 Default Value false
打印程序名称和从选项文件获取的所有选项。密码值被屏蔽。
请参阅本节的介绍,关于在何处指定此选项的约束。