Перейти к основному содержанию

Введение

Существует несколько способов задать SETTING для пользователя в ClickHouse — в зависимости от сценария использования и того, как долго она должна действовать. Рассмотрим несколько вариантов…

Настройка SETTING для отдельного запроса

Запрос SELECT может содержать предложение SETTINGS, в котором можно задать любое количество SETTING. Эти SETTING применяются только к этому запросу. Например:
SELECT *
FROM my_table
SETTINGS max_threads = 8;
Для этого конкретного запроса максимальное количество потоков будет равно 8.

Настройка SETTING для сеанса

Вы можете задать SETTING на время действия клиентского сеанса с помощью предложения SET. Это удобно для разового тестирования или в случаях, когда нужно, чтобы SETTING действовал в течение нескольких запросов, но не дольше.
SET max_threads = 8;

SELECT *
FROM my_table;

Настройте SETTING для конкретного пользователя

Используйте ALTER USER, чтобы задать SETTING только для одного пользователя. Например:
ALTER USER my_user_name SETTINGS max_threads = 8;
Вы можете проверить, что всё сработало: выйдите из клиента, снова войдите в него и затем используйте функцию getSetting:
SELECT getSetting('max_threads');
Указание настроек таким образом перезапишет текущие настройки пользователя; то есть, если для пользователя уже были заданы другие настройки, но вы не указали их в операторе ALTER USER, они будут потеряны.Если вы хотите сохранить текущие настройки, используйте вместо этого ALTER USER ... MODIFY SETTING ...
Последнее изменение 10 июня 2026 г.