# Конфигурационные параметры сервера {#server-configuration-parameters-reference} ## builtin\_dictionaries\_reload\_interval {#builtin-dictionaries-reload-interval} Интервал (в секундах) перезагрузки встроенных словарей. ClickHouse перезагружает встроенные словари с заданным интервалом. Это позволяет править словари «на лету» без перезапуска сервера. Значение по умолчанию - 3600. **Пример** ``` xml 3600 ``` ## compression {#compression} Настройки компрессии данных. !!! warning "Внимание" Лучше не использовать, если вы только начали работать с ClickHouse. Общий вид конфигурации: ``` xml ... ... ... ... ``` Поля блока ``: - `min_part_size` - Минимальный размер части таблицы. - `min_part_size_ratio` - Отношение размера минимальной части таблицы к полному размеру таблицы. - `method` - Метод сжатия. Возможные значения: `lz4`, `zstd`. Можно сконфигурировать несколько разделов ``. ClickHouse проверяет условия для `min_part_size` и `min_part_size_ratio` и выполнит те блоки `case`, для которых условия совпали. - Если кусок данных совпадает с условиями, ClickHouse использует указанные метод сжатия. - Если кусок данных совпадает с несколькими блоками `case`, ClickHouse использует перый совпавший блок условий. Если ни один `` не подходит, то ClickHouse применит алгоритм сжатия `lz4`. **Пример** ``` xml 10000000000 0.01 zstd ``` ## default\_database {#default-database} База данных по умолчанию. Перечень баз данных можно получить запросом [SHOW DATABASES](../../operations/server-configuration-parameters/settings.md#show-databases). **Пример** ``` xml default ``` ## default\_profile {#default-profile} Профиль настроек по умолчанию. Профили настроек находятся в файле, указанном в параметре `user_config`. **Пример** ``` xml default ``` ## dictionaries\_config {#server_configuration_parameters-dictionaries_config} Путь к конфигурации внешних словарей. Путь: - Указывается абсолютным или относительно конфигурационного файла сервера. - Может содержать wildcard-ы \* и ?. Смотрите также «[Внешние словари](../../operations/server-configuration-parameters/settings.md)». **Пример** ``` xml *_dictionary.xml ``` ## dictionaries\_lazy\_load {#server_configuration_parameters-dictionaries_lazy_load} Отложенная загрузка словарей. Если `true`, то каждый словарь создаётся при первом использовании. Если словарь не удалось создать, то вызов функции, использующей словарь, сгенерирует исключение. Если `false`, то все словари создаются при старте сервера, и в случае ошибки сервер завершает работу. По умолчанию - `true`. **Пример** ``` xml true ``` ## format\_schema\_path {#server_configuration_parameters-format_schema_path} Путь к каталогу со схемами для входных данных. Например со схемами для формата [CapnProto](../../interfaces/formats.md#capnproto). **Пример** ``` xml format_schemas/ ``` ## graphite {#server_configuration_parameters-graphite} Отправка данных в [Graphite](https://github.com/graphite-project). Настройки: - host – Сервер Graphite. - port – Порт сервера Graphite. - interval – Период отправки в секундах. - timeout – Таймаут отправки данных в секундах. - root\_path – Префикс для ключей. - metrics – Отправка данных из таблицы [system.metrics](../../operations/server-configuration-parameters/settings.md#system_tables-metrics). - events – Отправка дельты данных, накопленной за промежуток времени из таблицы [system.events](../../operations/server-configuration-parameters/settings.md#system_tables-events). - events\_cumulative – Отправка суммарных данных из таблицы [system.events](../../operations/server-configuration-parameters/settings.md#system_tables-events). - asynchronous\_metrics – Отправка данных из таблицы [system.asynchronous\_metrics](../../operations/server-configuration-parameters/settings.md#system_tables-asynchronous_metrics). Можно определить несколько секций ``, например, для передачи различных данных с различной частотой. **Пример** ``` xml localhost 42000 0.1 60 one_min true true false true ``` ## graphite\_rollup {#server_configuration_parameters-graphite-rollup} Настройка прореживания данных для Graphite. Подробнее читайте в разделе [GraphiteMergeTree](../../operations/server-configuration-parameters/settings.md). **Пример** ``` xml max 0 60 3600 300 86400 3600 ``` ## http\_port/https\_port {#http-porthttps-port} Порт для обращений к серверу по протоколу HTTP(s). Если указан `https_port`, то требуется конфигурирование [openSSL](#server_configuration_parameters-openssl). Если указан `http_port`, то настройка openSSL игнорируется, даже если она задана. **Пример** ``` xml 9999 ``` ## http\_server\_default\_response {#server_configuration_parameters-http_server_default_response} Страница, показываемая по умолчанию, при обращении к HTTP(s) серверу ClickHouse. Значение по умолчанию «Ok.» (с переводом строки на конце). **Пример** Показывает `https://tabix.io/` при обращении к `http://localhost:http_port`. ``` xml
]]>
``` ## include\_from {#server_configuration_parameters-include_from} Путь к файлу с подстановками. Подробности смотрите в разделе «[Конфигурационные файлы](../configuration-files.md#configuration_files)». **Пример** ``` xml /etc/metrica.xml ``` ## interserver\_http\_port {#interserver-http-port} Порт для обмена между серверами ClickHouse. **Пример** ``` xml 9009 ``` ## interserver\_http\_host {#interserver-http-host} Имя хоста, которое могут использовать другие серверы для обращения к этому. Если не указано, то определяется аналогично команде `hostname -f`. Удобно использовать, чтобы отвязаться от конкретного сетевого интерфейса. **Пример** ``` xml example.yandex.ru ``` ## interserver\_http\_credentials {#server-settings-interserver-http-credentials} Имя пользователя и пароль, использующиеся для аутентификации при [репликации](../../operations/server-configuration-parameters/settings.md) движками Replicated\*. Это имя пользователя и пароль используются только для взаимодействия между репликами кластера и никак не связаны с аутентификацией клиентов ClickHouse. Сервер проверяет совпадение имени и пароля для соединяющихся с ним реплик, а также использует это же имя и пароль для соединения с другими репликами. Соответственно, эти имя и пароль должны быть прописаны одинаковыми для всех реплик кластера. По умолчанию аутентификация не используется. Раздел содержит следующие параметры: - `user` — имя пользователя. - `password` — пароль. **Пример конфигурации** ``` xml admin 222 ``` ## keep\_alive\_timeout {#keep-alive-timeout} Время в секундах, в течение которого ClickHouse ожидает входящих запросов прежде, чем закрыть соединение. **Пример** ``` xml 3 ``` ## listen\_host {#server_configuration_parameters-listen_host} Ограничение по хостам, с которых может прийти запрос. Если необходимо, чтобы сервер отвечал всем, то надо указать `::`. Примеры: ``` xml ::1 127.0.0.1 ``` ## logger {#server_configuration_parameters-logger} Настройки логирования. Ключи: - `level` - Уровень логирования. Допустимые значения: `trace`, `debug`, `information`, `warning`, `error`. - `log` - Файл лога. Содержит все записи согласно `level`. - `errorlog` - Файл лога ошибок. - `size` - Размер файла. Действует для `log` и `errorlog`. Как только файл достиг размера `size`, ClickHouse архивирует и переименовывает его, а на его месте создает новый файл лога. - `count` - Количество заархивированных файлов логов, которые сохраняет ClickHouse. **Пример** ``` xml trace /var/log/clickhouse-server/clickhouse-server.log /var/log/clickhouse-server/clickhouse-server.err.log 1000M 10 ``` Также, существует поддержка записи в syslog. Пример конфига: ``` xml 1
syslog.remote:10514
myhost.local LOG_LOCAL6 syslog
``` Ключи для syslog: - use\_syslog - обязательная настройка, если требуется запись в syslog - address - хост\[:порт\] демона syslogd. Если не указан, используется локальный - hostname - опционально, имя хоста, с которого отсылаются логи - facility - [категория syslog](https://en.wikipedia.org/wiki/Syslog#Facility), записанная в верхнем регистре, с префиксом «LOG\_»: (`LOG_USER`, `LOG_DAEMON`, `LOG_LOCAL3` и прочие). Значения по умолчанию: при указанном `address` - `LOG_USER`, иначе - `LOG_DAEMON` - format - формат сообщений. Возможные значения - `bsd` и `syslog` ## send\_crash\_reports {#server_configuration_parameters-logger} Настройки для отправки сообщений о сбоях в команду разработчиков ядра ClickHouse через [Sentry](https://sentry.io). Включение этих настроек, особенно в pre-production среде, может дать очень ценную информацию и поможет развитию ClickHouse. Сервер на котором включены данные настройки должен иметь доступ в Интернет по протоколу IPv4 (на момент написания документации IPv6 не поддерживается публичным облаком Sentry) для правильной работы данной функциональности. Ключи: - `enabled` – Булевый флаг чтобы включить функциональность, по умолчанию `false`. Установите `true` чтобы разрешить отправку отчетов о сбоях. - `endpoint` – Вы можете переопределить URL на который будут отсылаться отчеты об ошибках и использовать собственную инсталяцию Sentry. Используйте URL синтаксис [Sentry DSN](https://docs.sentry.io/error-reporting/quickstart/?platform=native#configure-the-sdk). - `anonymize` - Запретить отсылку имени хоста сервера в отчете о сбое. - `http_proxy` - Настройка HTTP proxy для отсылки отчетов о сбоях. - `debug` - Настроить клиентскую библиотеку Sentry в debug режим. - `tmp_path` - Путь в файловой системе для временного хранения состояния отчетов о сбоях перед отправкой на сервер Sentry. **Рекомендованые настройки** ``` xml true ``` ## macros {#macros} Подстановки параметров реплицируемых таблиц. Можно не указывать, если реплицируемых таблицы не используются. Подробнее смотрите в разделе «[Создание реплицируемых таблиц](../../operations/server-configuration-parameters/settings.md)». **Пример** ``` xml ``` ## mark\_cache\_size {#server-mark-cache-size} Приблизительный размер (в байтах) кэша засечек, используемых движками таблиц семейства [MergeTree](../../operations/server-configuration-parameters/settings.md). Кэш общий для сервера, память выделяется по мере необходимости. **Пример** ``` xml 5368709120 ``` ## max\_server\_memory\_usage {#max_server_memory_usage} Ограничивает объём оперативной памяти, используемой сервером ClickHouse. Настройка может быть задана только для профиля `default`. Возможные значения: - Положительное целое число. - 0 — объём используемой памяти не ограничен. Значение по умолчанию: `0`. **Дополнительная информация** Значение по умолчанию для `max_server_memory_usage` рассчитывается как `memory_amount * max_server_memory_usage_to_ram_ratio`. **См. также** - [max\_memory\_usage](../../operations/settings/query-complexity.md#settings_max_memory_usage) - [max_server_memory_usage_to_ram_ratio](#max_server_memory_usage_to_ram_ratio) ## max_server_memory_usage_to_ram_ratio {#max_server_memory_usage_to_ram_ratio} Определяет долю оперативной памяти, доступную для использования сервером Clickhouse. Если сервер попытается использовать больше, предоставляемый ему объём памяти будет ограничен до расчётного значения. Возможные значения: - Положительное число с плавающей запятой. - 0 — сервер Clickhouse может использовать всю оперативную память. Значение по умолчанию: `0`. **Использование** На серверах с небольшим объёмом оперативной памяти и файла подкачки может потребоваться установить настройку `max_server_memory_usage_to_ram_ratio` в значение, большее 1. **Пример** ``` xml 0.9 ``` **См. также** - [max_server_memory_usage](#max_server_memory_usage) ## max\_concurrent\_queries {#max-concurrent-queries} Максимальное количество одновременно обрабатываемых запросов. **Пример** ``` xml 100 ``` ## max\_connections {#max-connections} Максимальное количество входящих соединений. **Пример** ``` xml 4096 ``` ## max\_open\_files {#max-open-files} Максимальное количество открытых файлов. По умолчанию - `maximum`. Рекомендуется использовать в Mac OS X, поскольку функция `getrlimit()` возвращает некорректное значение. **Пример** ``` xml 262144 ``` ## max\_table\_size\_to\_drop {#max-table-size-to-drop} Ограничение на удаление таблиц. Если размер таблицы семейства [MergeTree](../../operations/server-configuration-parameters/settings.md) превышает `max_table_size_to_drop` (в байтах), то ее нельзя удалить запросом DROP. Если таблицу все же необходимо удалить, не перезапуская при этом сервер ClickHouse, то необходимо создать файл `/flags/force_drop_table` и выполнить запрос DROP. Значение по умолчанию - 50GB. Значение 0 означает, что можно удалять все таблицы без ограничений. **Пример** ``` xml 0 ``` ## max\_thread\_pool\_size {#max-thread-pool-size} Максимальное кол-во потоков в глобальном пуле потоков. Default value: 10000. **Example** ``` xml 12000 ``` ## merge\_tree {#server_configuration_parameters-merge_tree} Тонкая настройка таблиц семейства [MergeTree](../../operations/server-configuration-parameters/settings.md). Подробнее смотрите в заголовочном файле MergeTreeSettings.h. **Пример** ``` xml 5 ``` ## openSSL {#server_configuration_parameters-openssl} Настройки клиента/сервера SSL. Поддержку SSL обеспечивает библиотека `libpoco`. Описание интерфейса находится в файле [SSLManager.h](https://github.com/ClickHouse-Extras/poco/blob/master/NetSSL_OpenSSL/include/Poco/Net/SSLManager.h) Ключи настроек сервера/клиента: - privateKeyFile - Путь к файлу с секретным ключом сертификата в формате PEM. Файл может содержать ключ и сертификат одновременно. - certificateFile - Путь к файлу сертификата клиента/сервера в формате PEM. Можно не указывать, если `privateKeyFile` содержит сертификат. - caConfig - Путь к файлу или каталогу, которые содержат доверенные корневые сертификаты. - verificationMode - Способ проверки сертификатов узла. Подробности находятся в описании класса [Context](https://github.com/ClickHouse-Extras/poco/blob/master/NetSSL_OpenSSL/include/Poco/Net/Context.h). Допустимые значения: `none`, `relaxed`, `strict`, `once`. - verificationDepth - Максимальная длина верификационной цепи. Верификация завершится ошибкой, если длина цепи сертификатов превысит установленное значение. - loadDefaultCAFile - Признак того, что будут использоваться встроенные CA-сертификаты для OpenSSL. Допустимые значения: `true`, `false`. \| - cipherList - Поддерживаемые OpenSSL-шифры. Например, `ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH`. - cacheSessions - Включение/выключение кеширования сессии. Использовать обязательно вместе с `sessionIdContext`. Допустимые значения: `true`, `false`. - sessionIdContext - Уникальный набор произвольных символов, которые сервер добавляет к каждому сгенерированному идентификатору. Длина строки не должна превышать `SSL_MAX_SSL_SESSION_ID_LENGTH`. Рекомендуется к использованию всегда, поскольку позволяет избежать проблем как в случае, если сервер кеширует сессию, так и если клиент затребовал кеширование. По умолчанию `${application.name}`. - sessionCacheSize - Максимальное количество сессий, которые кэширует сервер. По умолчанию - 1024\*20. 0 - неограниченное количество сессий. - sessionTimeout - Время кеширования сессии на сервере. - extendedVerification - Автоматическая расширенная проверка сертификатов после завершении сессии. Допустимые значения: `true`, `false`. - requireTLSv1 - Требование соединения TLSv1. Допустимые значения: `true`, `false`. - requireTLSv1\_1 - Требование соединения TLSv1.1. Допустимые значения: `true`, `false`. - requireTLSv1\_2 - Требование соединения TLSv1.2. Допустимые значения: `true`, `false`. - fips - Активация режима OpenSSL FIPS. Поддерживается, если версия OpenSSL, с которой собрана библиотека поддерживает fips. - privateKeyPassphraseHandler - Класс (подкласс PrivateKeyPassphraseHandler)запрашивающий кодовую фразу доступа к секретному ключу. Например, ``, `KeyFileHandler`, `test`, ``. - invalidCertificateHandler - Класс (подкласс CertificateHandler) для подтверждения не валидных сертификатов. Например, ` ConsoleCertificateHandler `. - disableProtocols - Запрещенные к использованию протоколы. - preferServerCiphers - Предпочтение серверных шифров на клиенте. **Пример настройки:** ``` xml /etc/clickhouse-server/server.crt /etc/clickhouse-server/server.key /etc/clickhouse-server/dhparam.pem none true true sslv2,sslv3 true true true sslv2,sslv3 true RejectCertificateHandler ``` ## part\_log {#server_configuration_parameters-part-log} Логирование событий, связанных с данными типа [MergeTree](../../engines/table-engines/mergetree-family/mergetree.md). Например, события добавления или мержа данных. Лог можно использовать для симуляции алгоритмов слияния, чтобы сравнивать их характеристики. Также, можно визуализировать процесс слияния. Запросы логируются не в отдельный файл, а в таблицу [system.part\_log](../../operations/system-tables/part_log.md#system_tables-part-log). Вы можете изменить название этой таблицы в параметре `table` (см. ниже). При настройке логирования используются следующие параметры: - `database` — имя базы данных; - `table` — имя таблицы; - `partition_by` — устанавливает [произвольный ключ партиционирования](../../operations/server-configuration-parameters/settings.md). Нельзя использовать если используется `engine` - `engine` - устанавливает [настройки MergeTree Engine](../../engines/table-engines/mergetree-family/mergetree.md#table_engine-mergetree-creating-a-table) для системной таблицы. Нельзя использовать если используется `partition_by`. - `flush_interval_milliseconds` — период сброса данных из буфера в памяти в таблицу. **Пример** ``` xml system part_log
toMonday(event_date) 7500
``` ## path {#server_configuration_parameters-path} Путь к каталогу с данными. !!! warning "Обратите внимание" Завершающий слеш обязателен. **Пример** ``` xml /var/lib/clickhouse/ ``` ## prometheus {#server_configuration_parameters-prometheus} Опубликовать данные о метриках, для сбора с помощью системы мониторинга [Prometheus](https://prometheus.io). Настройки: - `endpoint` – путь по которому будет осуществляться экспорт данных метрик по HTTP протоколу для сбора с помощью prometheus. Должен начинаться с ‘/’. - `port` – порт по которому будет доступен endpoint для сбора метрик. - `metrics` – флаг для экспорта текущих значений метрик из таблицы [system.metrics](../system-tables/metrics.md#system_tables-metrics). - `events` – флаг для экспорта текущих значений метрик из таблицы [system.events](../system-tables/events.md#system_tables-events). - `asynchronous_metrics` – флаг для экспорта текущих значений значения метрик из таблицы [system.asynchronous\_metrics](../system-tables/asynchronous_metrics.md#system_tables-asynchronous_metrics). **Пример** ``` xml /metrics 8001 true true true ``` ## query\_log {#server_configuration_parameters-query-log} Настройка логирования запросов, принятых с настройкой [log\_queries=1](../../operations/settings/settings.md). Запросы логируются не в отдельный файл, а в системную таблицу [system.query\_log](../../operations/system-tables/query_log.md#system_tables-query_log). Вы можете изменить название этой таблицы в параметре `table` (см. ниже). При настройке логирования используются следующие параметры: - `database` — имя базы данных; - `table` — имя таблицы, куда будет записываться лог; - `partition_by` — устанавливает [произвольный ключ партиционирования](../../operations/server-configuration-parameters/settings.md). Нельзя использовать если используется `engine` - `engine` - устанавливает [настройки MergeTree Engine](../../engines/table-engines/mergetree-family/mergetree.md#table_engine-mergetree-creating-a-table) для системной таблицы. Нельзя использовать если используется `partition_by`. - `flush_interval_milliseconds` — период сброса данных из буфера в памяти в таблицу. Если таблица не существует, то ClickHouse создаст её. Если структура журнала запросов изменилась при обновлении сервера ClickHouse, то таблица со старой структурой переименовывается, а новая таблица создается автоматически. **Пример** ``` xml system query_log
Engine = MergeTree PARTITION BY event_date ORDER BY event_time TTL event_date + INTERVAL 30 day 7500
``` ## query\_thread\_log {#server_configuration_parameters-query_thread_log} Настройка логирования потоков выполнения запросов, принятых с настройкой [log\_query\_threads=1](../settings/settings.md#settings-log-query-threads). Запросы логируются не в отдельный файл, а в системную таблицу [system.query\_thread\_log](../../operations/system-tables/query_thread_log.md#system_tables-query_thread_log). Вы можете изменить название этой таблицы в параметре `table` (см. ниже). При настройке логирования используются следующие параметры: - `database` — имя базы данных; - `table` — имя таблицы, куда будет записываться лог; - `partition_by` — устанавливает [произвольный ключ партиционирования](../../operations/server-configuration-parameters/settings.md). Нельзя использовать если используется `engine` - `engine` - устанавливает [настройки MergeTree Engine](../../engines/table-engines/mergetree-family/mergetree.md#table_engine-mergetree-creating-a-table) для системной таблицы. Нельзя использовать если используется `partition_by`. - `flush_interval_milliseconds` — период сброса данных из буфера в памяти в таблицу. Если таблица не существует, то ClickHouse создаст её. Если структура журнала запросов изменилась при обновлении сервера ClickHouse, то таблица со старой структурой переименовывается, а новая таблица создается автоматически. **Пример** ``` xml system query_thread_log
toMonday(event_date) 7500
``` ## text\_log {#server_configuration_parameters-text_log} Настройка логирования текстовых сообщений в системную таблицу [text\_log](../../operations/system-tables/text_log.md#system_tables-text_log). Параметры: - `level` — Максимальный уровень сообщения (по умолчанию `Trace`) которое будет сохранено в таблице. - `database` — имя базы данных для хранения таблицы. - `table` — имя таблицы, куда будут записываться текстовые сообщения. - `partition_by` — устанавливает [произвольный ключ партиционирования](../../operations/server-configuration-parameters/settings.md). Нельзя использовать если используется `engine` - `engine` - устанавливает [настройки MergeTree Engine](../../engines/table-engines/mergetree-family/mergetree.md#table_engine-mergetree-creating-a-table) для системной таблицы. Нельзя использовать если используется `partition_by`. - `flush_interval_milliseconds` — период сброса данных из буфера в памяти в таблицу. **Пример** ```xml notice system text_log
7500 Engine = MergeTree PARTITION BY event_date ORDER BY event_time TTL event_date + INTERVAL 30 day
``` ## trace\_log {#server_configuration_parameters-trace_log} Настройки для [trace\_log](../../operations/system-tables/trace_log.md#system_tables-trace_log) system table operation. Parameters: - `database` — Database for storing a table. - `table` — Table name. - `partition_by` — устанавливает [произвольный ключ партиционирования](../../operations/server-configuration-parameters/settings.md). Нельзя использовать если используется `engine` - `engine` - устанавливает [настройки MergeTree Engine](../../engines/table-engines/mergetree-family/mergetree.md#table_engine-mergetree-creating-a-table) для системной таблицы. Нельзя использовать если используется `partition_by`. - `flush_interval_milliseconds` — Interval for flushing data from the buffer in memory to the table. The default server configuration file `config.xml` contains the following settings section: ``` xml system trace_log
toYYYYMM(event_date) 7500
``` ## query\_masking\_rules {#query-masking-rules} Правила основанные на регурялных выражениях, которые будут применены для всех запросов а также для всех сообщений перед сохранением их в лог на сервере, `system.query_log`, `system.text_log`, `system.processes` таблицы, а также в логах отсылаемых клиенту. Это позволяет предотвратить утечку конфиденциальных данных из SQL запросов (такие как имена, электронные письма, личные идентификаторы или номера кредитных карт) в логи. **Пример** ``` xml hide SSN (^|\D)\d{3}-\d{2}-\d{4}($|\D) 000-00-0000 ``` Параметры конфигурации: - `name` - имя правила (необязательно) - `regexp` - совместимое с RE2 регулярное выражение (обязательное) - `replace` - строка замены для конфиденциальных данных (опционально, по умолчанию - шесть звездочек) Правила маскировки применяются ко всему запросу (для предотвращения утечки конфиденциальных данных из неправильно оформленных / не интерпритируемых запросов). `system.events` таблица содержит счетчик `QueryMaskingRulesMatch` который считает общее кол-во совпадений правил маскировки. Для распределенных запросов каждый сервер должен быть сконфигурирован отдельно, иначе, подзапросы, переданные на другие узлы, будут сохраняться без маскировки. ## remote\_servers {#server-settings-remote-servers} Конфигурация кластеров, которые использует движок таблиц [Distributed](../../operations/server-configuration-parameters/settings.md) и табличная функция `cluster`. **Пример** ``` xml ``` Значение атрибута `incl` смотрите в разделе «[Конфигурационные файлы](../configuration-files.md#configuration_files)». **Смотрите также** - [skip\_unavailable\_shards](../settings/settings.md#settings-skip_unavailable_shards) ## timezone {#server_configuration_parameters-timezone} Временная зона сервера. Указывается идентификатором IANA в виде часового пояса UTC или географического положения (например, Africa/Abidjan). Временная зона необходима при преобразованиях между форматами String и DateTime, которые возникают при выводе полей DateTime в текстовый формат (на экран или в файл) и при получении DateTime из строки. Также, временная зона используется в функциях, которые работают со временем и датой, если они не получили временную зону в параметрах вызова. **Пример** ``` xml Europe/Moscow ``` ## tcp\_port {#server_configuration_parameters-tcp_port} Порт для взаимодействия с клиентами по протоколу TCP. **Пример** ``` xml 9000 ``` ## tcp\_port\_secure {#server_configuration_parameters-tcp_port_secure} TCP порт для защищённого обмена данными с клиентами. Используйте с настройкой [OpenSSL](#server_configuration_parameters-openssl). **Возможные значения** Положительное целое число. **Значение по умолчанию** ``` xml 9440 ``` ## mysql\_port {#server_configuration_parameters-mysql_port} Порт для взаимодействия с клиентами по протоколу MySQL. **Возможные значения** Положительное целое. Пример ``` xml 9004 ``` ## tmp_path {#tmp-path} Путь ко временным данным для обработки больших запросов. !!! warning "Обратите внимание" Завершающий слеш обязателен. **Пример** ``` xml /var/lib/clickhouse/tmp/ ``` ## tmp\_policy {#tmp-policy} Политика из [storage_configuration](../../engines/table-engines/mergetree-family/mergetree.md#table_engine-mergetree-multiple-volumes) для хранения временных файлов. Если политика не задана, используется [tmp_path](#tmp-path). В противном случае `tmp_path` игнорируется. !!! note "Примечание" - `move_factor` игнорируется. - `keep_free_space_bytes` игнорируется. - `max_data_part_size_bytes` игнорируется. - В данной политике у вас должен быть ровно один том. ## uncompressed\_cache\_size {#server-settings-uncompressed_cache_size} Размер кеша (в байтах) для несжатых данных, используемых движками таблиц семейства [MergeTree](../../operations/server-configuration-parameters/settings.md). Кеш единый для сервера. Память выделяется по требованию. Кеш используется в том случае, если включена опция [use\_uncompressed\_cache](../settings/settings.md). Несжатый кеш выгодно использовать для очень коротких запросов в отдельных случаях. **Пример** ``` xml 8589934592 ``` ## user\_files\_path {#server_configuration_parameters-user_files_path} Каталог с пользовательскими файлами. Используется в табличной функции [file()](../../operations/server-configuration-parameters/settings.md). **Пример** ``` xml /var/lib/clickhouse/user_files/ ``` ## users\_config {#users-config} Путь к файлу, который содержит: - Конфигурации пользователей. - Права доступа. - Профили настроек. - Настройки квот. **Пример** ``` xml users.xml ``` ## zookeeper {#server-settings_zookeeper} Содержит параметры, позволяющие ClickHouse взаимодействовать с кластером [ZooKeeper](http://zookeeper.apache.org/). ClickHouse использует ZooKeeper для хранения метаданных о репликах при использовании реплицированных таблиц. Если реплицированные таблицы не используются, этот раздел параметров может отсутствовать. Раздел содержит следующие параметры: - `node` — адрес ноды (сервера) ZooKeeper. Можно сконфигурировать несколько нод. Например: ``` xml example_host 2181 ``` Атрибут `index` задает порядок опроса нод при попытках подключиться к кластеру ZooKeeper. - `session_timeout` — максимальный таймаут клиентской сессии в миллисекундах. - `root` — [znode](http://zookeeper.apache.org/doc/r3.5.5/zookeeperOver.html#Nodes+and+ephemeral+nodes), который используется как корневой для всех znode, которые использует сервер ClickHouse. Необязательный. - `identity` — пользователь и пароль, которые может потребовать ZooKeeper для доступа к запрошенным znode. Необязательный. **Пример конфигурации** ``` xml example1 2181 example2 2181 30000 10000 /path/to/zookeeper/node user:password ``` **Смотрите также** - [Репликация](../../engines/table-engines/mergetree-family/replication.md) - [ZooKeeper Programmer’s Guide](http://zookeeper.apache.org/doc/current/zookeeperProgrammers.html) ## use\_minimalistic\_part\_header\_in\_zookeeper {#server-settings-use_minimalistic_part_header_in_zookeeper} Способ хранения заголовков кусков данных в ZooKeeper. Параметр применяется только к семейству таблиц `MergeTree`. Его можно установить: - Глобально в разделе [merge\_tree](#server_configuration_parameters-merge_tree) файла `config.xml`. ClickHouse использует этот параметр для всех таблиц на сервере. Вы можете изменить настройку в любое время. Существующие таблицы изменяют свое поведение при изменении параметра. - Для каждой отдельной таблицы. При создании таблицы укажите соответствующую [настройку движка](../../operations/server-configuration-parameters/settings.md#table_engine-mergetree-creating-a-table). Поведение существующей таблицы с установленным параметром не изменяется даже при изменении глобального параметра. **Возможные значения** - 0 — функциональность выключена. - 1 — функциональность включена. Если `use_minimalistic_part_header_in_zookeeper = 1`, то [реплицированные](../../operations/server-configuration-parameters/settings.md) таблицы хранят заголовки кусков данных в компактном виде, используя только одну `znode`. Если таблица содержит много столбцов, этот метод хранения значительно уменьшает объём данных, хранящихся в Zookeeper. !!! attention "Внимание" После того как вы установили `use_minimalistic_part_header_in_zookeeper = 1`, невозможно откатить ClickHouse до версии, которая не поддерживает этот параметр. Будьте осторожны при обновлении ClickHouse на серверах в кластере. Не обновляйте все серверы сразу. Безопаснее проверять новые версии ClickHouse в тестовой среде или только на некоторых серверах кластера. Заголовки частей данных, ранее сохранённые с этим параметром, не могут быть восстановлены в их предыдущем (некомпактном) представлении. **Значение по умолчанию**: 0. ## disable\_internal\_dns\_cache {#server-settings-disable-internal-dns-cache} Отключает внутренний кеш DNS записей. Используется при эксплуатации ClickHouse в системах с часто меняющейся инфраструктурой, таких как Kubernetes. **Значение по умолчанию**: 0. ## dns\_cache\_update\_period {#server-settings-dns-cache-update-period} Период обновления IP адресов у записей во внутреннем DNS кеше ClickHouse (в секундах). Обновление выполняется асинхронно, отдельным системным потоком. **Значение по умолчанию**: 15. **Смотрите также** - [background_schedule_pool_size](../settings/settings.md#background_schedule_pool_size) ## access_control_path {#access_control_path} Путь к каталогу, где сервер ClickHouse хранит конфигурации пользователей и ролей, созданные командами SQL. Значение по умолчанию: `/var/lib/clickhouse/access/`. **Смотрите также** - [Управление доступом](../access-rights.md#access-control) [Оригинальная статья](https://clickhouse.tech/docs/ru/operations/server_configuration_parameters/settings/)