MySQL 8.0路由器/配置/配置文件的语法

4.1配置文件的语法

配置文件格式类似传统的INI文件格式和部分选项,但是有一些额外的扩展。

请注意

正斜杠和反斜杠都支持。反斜杠无条件复制,因为他们不转义字符。

评论

配置文件可以包含注释行。注释行开始一个散列(#)或分号(;),继续行结束。后评论支持。

部分

每个配置文件包含一个列表配置部分每个部分包含一个序列的哪里配置选项。每个配置选项有一个名称和值。例如:

(部分的名字]选项=价值选项=价值选项=价值(部分的名字:可选部分关键]选项=价值选项=价值选项=价值

一个配置文件部分头始于一个打开支架((),结束于一个括号(])。可以有前导和尾随空格字符,这被忽略,但没有空间括号内的部分。

括号内的部分头由一个部分的名字和一个可选的部分关键与一个冒号分开节标题(:)。部分名称和部分的组合配置的关键是独一无二的。

部分名称和部分密钥由一个序列的一个或多个字母,数字或下划线(_)。不允许有其他字符的部分名称或部分关键。

一段类似于一个名称空间。例如,用户选项的意思取决于它的相关部分。一个用户(默认)部分指的是MySQL路由器运行的系统用户,也是控制的——用户命令行选项。定义无关用户(metadata_cache)节,指的是MySQL用户访问一个MySQL服务器的元数据。

默认的部分

特殊部分的名字默认的(任何情况下)是用于选项的默认值。选项中没有一个部分是默认节抬头。默认的部分不接受部分关键。

选项

一段开始头后,可以有0个或多个序列选择行其中每个选项的形式行:

的名字=价值

任何前导或尾随空白字符选项名称或选项值之前被删除处理。选项名称是不区分大小写的。不支持评论之后,所以在本例中选择模式给出的值“只读#只读模式”,并将因此产生一个错误当启动路由器。

(路由循环):#后不支持评论所以以下不正确routing_strategy =循环#圈回到第一个服务器

变量插值

选项值支持(变量插值括号内)使用一个选择名字{}。插值是在检索选项值,而不是从配置文件中读取。如果一个变量没有定义,那么不做替换选项值是读取。

考虑一下这个示例配置文件:

(默认)前缀= /usr/(样本)本={前缀}bin /{名称}自由={前缀}lib /{名称}name = =魔法目录C: \ foo \酒吧\ {3 a339172 - 6898 - 11 - e6 - 8540 - 9 - f7b235afb23}

这里的价值“/ usr / bin /魔法”的价值自由是“/ usr / lib /魔法”,和价值的目录“C: \ foo \ \ {3 a339172 - 6898 - 11 - e6 - 8540 - 9 - f7b235afb23}”因为一个变量命名“{3 a339172 - 6898 - 11 - e6 - 8540 - 9 - f7b235afb23}”没有定义。

预定义的变量

MySQL路由器定义预定义变量可用于配置文件。变量使用括号,如{计划}程序预定义的变量。

表4.1预定义的变量

的名字 描述
程序 项目名称、正常mysqlrouter
起源 二进制文件所在路径目录
logging_folder 为日志文件路径文件夹
plugin_folder 路径为插件文件夹
runtime_folder 为运行时数据路径文件夹
config_folder 为配置文件路径文件夹