Конфигурационные параметры сервера
builtin_dictionaries_reload_interval
Интервал (в секундах) перезагрузки встроенных словарей.
ClickHouse перезагружает встроенные словари с заданным интервалом. Это позволяет править словари «на лету» без перезапуска сервера.
Значение по умолчанию - 3600.
Пример
<builtin_dictionaries_reload_interval>3600</builtin_dictionaries_reload_interval>
compression
Настройки компрессии данных.
Лучше не использовать, если вы только начали работать с ClickHouse.
Общий вид конфигурации:
<compression>
    <case>
      <min_part_size>...</min_part_size>
      <min_part_size_ratio>...</min_part_size_ratio>
      <method>...</method>
      <level>...</level>
    </case>
    ...
</compression>
Поля блока <case>:
- min_part_size- Минимальный размер части таблицы.
- min_part_size_ratio- Отношение размера минимальной части таблицы к полному размеру таблицы.
- method- Метод сжатия. Возможные значения:- lz4,- lz4hc,- zstd,- deflate_qpl.
- level– Уровень сжатия. См. Кодеки.
Можно сконфигурировать несколько разделов <case>.
ClickHouse проверяет условия для min_part_size и min_part_size_ratio и выполнит те блоки case, для которых условия совпали.
- Если кусок данных совпадает с условиями, ClickHouse использует указанные метод сжатия.
- Если кусок данных совпадает с несколькими блоками case, ClickHouse использует первый совпавший блок условий.
Если ни один <case> не подходит, то ClickHouse  применит алгоритм сжатия lz4.
Пример
<compression incl="clickhouse_compression">
    <case>
        <min_part_size>10000000000</min_part_size>
        <min_part_size_ratio>0.01</min_part_size_ratio>
        <method>zstd</method>
        <level>1</level>
    </case>
</compression>
encryption
Настраивает команду для получения ключа, используемого кодеками шифрования. Ключ (или несколько ключей) должен быть записан в переменные окружения или установлен в конфигурационном файле.
Ключи могут быть представлены в шестнадцатеричной или строковой форме. Их длина должна быть равна 16 байтам.
Пример
Загрузка из файла конфигурации:
<encryption_codecs>
    <aes_128_gcm_siv>
        <key>12345567812345678</key>
    </aes_128_gcm_siv>
</encryption_codecs>
Хранение ключей в конфигурационном файле не рекомендовано. Это не безопасно. Вы можете переместить ключи в отдельный файл на секретном диске и сделать symlink к этому конфигурационному файлу в папке config.d/.
Загрузка из файла конфигурации, когда ключ представлен в шестнадцатеричной форме:
<encryption_codecs>
    <aes_128_gcm_siv>
        <key_hex>00112233445566778899aabbccddeeff</key_hex>
    </aes_128_gcm_siv>
</encryption_codecs>
Загрузка ключа из переменной окружения:
<encryption_codecs>
    <aes_128_gcm_siv>
        <key_hex from_env="ENVVAR"></key_hex>
    </aes_128_gcm_siv>
</encryption_codecs>
Параметр current_key_id устанавливает текущий ключ для шифрования, и все указанные ключи можно использовать для расшифровки.
Все эти методы могут быть применены для нескольких ключей:
<encryption_codecs>
    <aes_128_gcm_siv>
        <key_hex id="0">00112233445566778899aabbccddeeff</key_hex>
        <key_hex id="1" from_env="ENVVAR"></key_hex>
        <current_key_id>1</current_key_id>
    </aes_128_gcm_siv>
</encryption_codecs>
Параметр current_key_id указывает текущий ключ для шифрования.
Также пользователь может добавить одноразовое случайное число длинной 12 байт (по умолчанию шифрование и дешифровка будут использовать одноразовое число длинной 12 байт, заполненное нулями):
<encryption_codecs>
    <aes_128_gcm_siv>
        <nonce>012345678910</nonce>
    </aes_128_gcm_siv>
</encryption_codecs>
Одноразовое число также может быть представлено в шестнадцатеричной форме:
<encryption_codecs>
    <aes_128_gcm_siv>
        <nonce_hex>abcdefabcdef</nonce_hex>
    </aes_128_gcm_siv>
</encryption_codecs>
Всё вышеперечисленное также применимо для алгоритма aes_256_gcm_siv (но ключ должен быть длиной 32 байта).
custom_settings_prefixes
Список префиксов для пользовательских настроек. Префиксы должны перечисляться через запятую.
Пример
<custom_settings_prefixes>custom_</custom_settings_prefixes>
См. также
core_dump
Задает мягкое ограничение для размера файла дампа памяти.
Возможные значения:
- положительное целое число.
Значение по умолчанию: 1073741824 (1 ГБ).
Жесткое ограничение настраивается с помощью системных инструментов.
Пример
<core_dump>
    <size_limit>1073741824</size_limit>
</core_dump>
database_atomic_delay_before_drop_table_sec
Устанавливает задержку перед удалением табличных данных, в секундах. Если запрос имеет идентификатор SYNC, эта настройка игнорируется.
Значение по умолчанию: 480 (8 минут).
default_database
База данных по умолчанию.
Перечень баз данных можно получить запросом SHOW DATABASES.
Пример
<default_database>default</default_database>
default_profile
Профиль настроек по умолчанию.
Профили настроек находятся в файле, указанном в параметре user_config.
Пример
<default_profile>default</default_profile>
default_replica_path
Путь к таблице в ZooKeeper.
Пример
<default_replica_path>/clickhouse/tables/{uuid}/{shard}</default_replica_path>
default_replica_name
Имя реплики в ZooKeeper.
Пример
<default_replica_name>{replica}</default_replica_name>
dictionaries_config
Путь к конфигурации внешних словарей.
Путь:
- Указывается абсолютным или относительно конфигурационного файла сервера.
- Может содержать wildcard-ы * и ?.
Смотрите также «Внешние словари».
Пример
<dictionaries_config>*_dictionary.xml</dictionaries_config>
user_defined_executable_functions_config
Путь к файлу конфигурации для исполняемых пользовательских функций.
Путь:
- Указывается абсолютным или относительно конфигурационного файла сервера.
- Может содержать wildcard-ы * и ?.
Смотрите также “Исполняемые пользовательские функции.”.
Пример
<user_defined_executable_functions_config>*_function.xml</user_defined_executable_functions_config>
dictionaries_lazy_load
Отложенная загрузка словарей.
Если true, то каждый словарь загружается при первом использовании. Если словарь не удалось загрузить, то вызов функции, использующей словарь, сгенерирует исключение.
Если false, все словари будут загружаться на старте сервера.
Сервер будет ждать на старте окончания загрузки всех словарей перед началом обработки соединений
(исключение: если wait_dictionaries_load_at_startup установлена в false - см. ниже).
По умолчанию - true.
Пример
<dictionaries_lazy_load>true</dictionaries_lazy_load>