4.1 Синтаксис файла конфигурации
Формат файла конфигурации напоминает традиционный формат INI-файла с разделами и параметрами, но с некоторыми дополнительными расширениями.
Поддерживаются как косые черты (/), так и обратные косые черты (\). Обратные косые черты копируются безусловно, так как они не экранируют символы.
Комментарии
Файл конфигурации может содержать строки комментариев. Строки комментариев начинаются с символа решётки (#) или точки с запятой (;) и продолжаются до конца строки. Конец строки комментария не поддерживается.
Разделы
Каждый файл конфигурации состоит из списка разделов конфигурации, где каждый раздел содержит последовательность параметров конфигурации. Каждый параметр конфигурации имеет имя и значение. Например:
[section name]
option = value
option = value
option = value
[section name:optional section key]
option = value
option = value
option = value
Заголовок раздела конфигурации начинается с открывающей скобки ([) и заканчивается закрывающей скобкой (]). В строке могут быть ведущие и хвостовые пробелы, которые игнорируются, но не допускаются пробелы внутри скобок раздела.
Заголовок раздела в скобках состоит из имени раздела и необязательного ключа раздела, которые разделены двоеточием (:). Сочетание имени и ключа раздела уникально для конфигурации.
Имена и ключи разделов состоят из последовательности одной или более букв, цифр или символов подчеркивания (_). Другие символы в имени или ключе раздела не допускаются.
Раздел аналогичен пространству имён. Например, значение параметра user зависит от его ассоциированного раздела. Пользователь в разделе [DEFAULT] относится к системному пользователю, под которым запущен MySQL Router, который также контролируется опцией командной строки --user. Не связано с этим определение пользователя в разделе [metadata_cache], которое относится к пользователю MySQL, который получает доступ к метаданным сервера MySQL.
Раздел по умолчанию
Специальное имя раздела DEFAULT (любой регистр) используется для значений параметров по умолчанию. Параметры, не найденные в разделе, ищутся в разделе по умолчанию. Раздел по умолчанию не принимает ключ раздела.
Параметры
После заголовка раздела может следовать последовательность нуля или более строк параметров, где каждая строка параметра имеет вид:
name = value
Все ведущие и хвостовые пробелы в имени и значении параметра удаляются перед обработкой. Имена параметров нечувствительны к регистру. Завершающие комментарии не поддерживаются, поэтому в этом примере параметру routing_strategy присваивается значение round-robin # Circles back to first
server, и при запуске маршрутизатора возникает ошибка.
[routing:round-robin]
# Trailing comments are not supported so the following is incorrect
routing_strategy=round-robin # Circles back to first server
Интерполяция переменных
Значения параметров поддерживают (интерполяцию переменных) с использованием имени параметра, заключенного в фигурные скобки { и }. Интерполяция выполняется при получении значения параметра, а не при чтении из файла конфигурации. Если переменная не определена, подстановка не выполняется, и значение параметра читается буквально.
Рассмотрим этот пример файла конфигурации:
[DEFAULT]
prefix = /usr/
[sample]
bin = {prefix}bin/{name}
lib = {prefix}lib/{name}
name = magic
directory = C:\foo\bar\{3a339172-6898-11e6-8540-9f7b235afb23}
Здесь значение bin равно "/usr/bin/magic", значение lib равно "/usr/lib/magic", а значение directory равно "C:\foo\bar\{3a339172-6898-11e6-8540-9f7b235afb23}", потому что переменная с именем "{3a339172-6898-11e6-8540-9f7b235afb23}" не определена.
Предопределённые переменные
MySQL Router определяет предопределённые переменные, доступные в файле конфигурации. Переменные используют фигурные скобки, например {program} для предопределённой переменной program.
Таблица 4.1 Предопределённые переменные
| Имя | Описание |
|---|---|
program | Имя программы, обычно mysqlrouter
|
origin | Путь к каталогу, где находится бинарник |
logging_folder | Путь к каталогу для файлов логов |
plugin_folder | Путь к каталогу для плагинов |
runtime_folder | Путь к каталогу для данных во время выполнения |
config_folder | Путь к каталогу для файлов конфигурации |
Информация о командной строке
Для получения информации о синтаксисе командной строки и опциях см. Раздел 4.3.1, «Определение опций с помощью командной строки».
© 2025 Oracle
Licensed under the GPLv2 License.