大多数支持选项文件的 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_nameCommand-Line Format --defaults-extra-file=filenameType 文件名 Default Value [none]在全局选项文件之后但(在 Unix 上)在用户选项文件之前(在所有平台上)在登录路径文件之前读取该选项文件。(有关选项文件使用顺序的信息,请参阅 第 6.2.2.2 节,“使用选项文件”。)如果文件不存在或不可访问,将发生错误。如果
file_name不是绝对路径名,则相对于当前目录进行解释。请参阅本节的介绍,了解在何处指定该选项的约束。
-
Command-Line Format --defaults-file=filenameType 文件名 Default Value [none]仅读取指定的选项文件。如果文件不存在或不可访问,将发生错误。
file_name相对于当前目录进行解释,如果给定为相对路径名而不是完整路径名。例外:即使使用
--defaults-file,mysqld 仍然读取mysqld-auto.cnf,客户端程序读取.mylogin.cnf。请参阅本节的介绍,了解在何处指定该选项的约束。
-
Command-Line Format --defaults-group-suffix=stringType 字符串 Default Value [none]不仅读取通常的选项组,还读取具有通常名称和后缀
str的组。例如, mysql 客户端通常读取[client]和[mysql]组。如果给出该选项为--defaults-group-suffix=_other, mysql 也读取[client_other]和[mysql_other]组。 -
Command-Line Format --login-path=nameType 字符串 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-pathsType 布尔值 Default Value false跳过从登录路径文件中读取选项。客户端程序总是读取登录路径文件,即使使用
--no-defaults选项。见
--login-path有关信息。见本节的介绍,关于在哪个位置指定该选项的约束。
-
Command-Line Format --no-defaultsType 布尔值 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-defaultsType 布尔值 Default Value false打印程序名称和从选项文件获取的所有选项。密码值被屏蔽。
请参阅本节的介绍,关于在何处指定此选项的约束。