MySQL Router 在启动时扫描默认配置文件,并可选择在运行时从命令行加载用户定义的配置文件。
默认情况下,MySQL Router 会根据平台和 MySQL Router 的设置方式扫描其配置文件的特定位置。
您可以使用该
-DROUTER_CONFIGDIR=<path>
选项在编译时更改默认位置。您还可以cmake/settings.cmake
在编译 MySQL Router 之前编辑以更改默认位置,从而为特定平台添加新位置或例外。
执行mysqlrouter --help
以查看系统上的默认配置文件位置(及其可用性)。例如:
$> mysqlrouter --help
...
Start MySQL Router.
Configuration read from the following files in the given order (enclosed
in parentheses means not available for reading):
(/usr/local/mysql-router/mysqlrouter.conf)
/Users/philip/.mysqlrouter.conf
Plugins Path:
/usr/local/lib/mysqlrouter
Default Log Directory:
/usr/local/mysql-router
Default Persistent Data Directory:
/usr/local/mysql-router/data
Default Runtime State Directory:
/usr/local/mysql-router/run
Usage: mysqlrouter [-v|--version] [-h|--help]
...
如果使用该
--config
选项传入用户定义的配置文件,则不会加载默认配置文件。
在 Linux 上,MySQL Router 默认扫描以下位置,尽管这些位置取决于系统:
-
/etc/mysqlrouter/mysqlrouter.conf
笔记/etc/mysqlrouter.conf
与 MySQL 服务器不同,不支持 向后兼容路径“ ”。 $HOME/.mysqlrouter.conf
为了向后兼容,MySQL Router 还在 每个目录中查找.ini变体。这样做时,路由器会在初始目录中查找 .conf版本,然后检查 .ini版本,然后在下一个目录(通常是系统上用户的主目录)中重复该过程。
两个命令行选项有助于控制这些配置文件位置:
-
--config
(或-c
):从该文件中读取基本配置,而不使用或扫描默认文件路径。--directory
使用示例:当使用bootstrap 选项 生成独立的 MySQL Router 安装时 ,generatedstart.sh
将此选项传递给该mysqlrouter.conf
目录内的 generated。
--extra-config
(或 ):在从默认位置或使用该选项-a
指定的文件读取配置文件后,读取此附加配置文件 。--config
例如:
$> mysqlrouter --config /custom/path/to/router.conf --extra-config /another/config.conf
可以传入多个额外的配置选项,文件按照输入的顺序加载,
选项在选项--config
之前加载
--extra-config
。例如:
$> mysqlrouter --extra-config a.conf --config b.conf --extra-config c.conf
在上面的示例中,首先
b.conf
加载,然后按此顺序加载。此外,默认配置文件(例如
)未加载,因为已被使用。
a.conf
c.conf
/etc/mysqlrouter/mysqlrouter.conf
--config
每个加载的配置文件都会覆盖先前读取的配置文件中的配置设置。
下面列出了路由器在流行的 Linux 平台上读取配置文件的默认文件位置。
执行mysqlrouter --help
以查看系统上的默认配置文件位置(及其可用性)。
默认系统范围安装在
/usr/local
:/usr/local/etc/mysqlrouter.conf
RPM 和 Debian:
/etc/mysqlrouter/mysqlrouter.conf
在所有系统上,使用
--directory
添加mysqlrouter.conf
到--directory定义的目录中的引导式独立安装。
MySQL Router 在 Windows 上搜索配置文件的默认文件位置。
执行mysqlrouter.exe --help
以查看系统上的默认配置文件位置(及其可用性)。
默认系统范围安装在
C:\ProgramData\MySQL\MySQL Router
:C:\ProgramData\MySQL\MySQL Router\mysqlrouter.conf
另外: where替换为您系统的用户。
C:\Users\
username
\AppData\Roaming\mysqlrouter.confusername
除了mysqlrouter.conf 之外,为了向后兼容,系统还会查找 mysqlrouter.ini
With
--directory
:使用--directory
添加mysqlrouter.conf
到--directory定义的目录中的引导式独立安装。