6.2.2.3 影响选项文件处理的命令行选项
大多数支持选项文件的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
不存在或无法访问,会发生错误。如果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]
从指定的登录路径中读取选项。一个 “登录路径” 是包含指定连接到哪个 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
打印程序名称及其来自选项文件的所有选项。密码值被掩码。
请参阅本节介绍中关于此选项可能指定位置的约束。