Команды SYSTEM
RELOAD EMBEDDED DICTIONARIES
Перезагружает все внутренние словари. По умолчанию внутренние словари отключены. Всегда возвращает Ok.
, независимо от результата обновления внутреннего словаря.
RELOAD DICTIONARIES
Перезагружает все словари, которые были успешно загружены ранее. По умолчанию словари загружаются лениво (см. dictionaries_lazy_load), поэтому вместо автоматической загрузки при старте они инициализируются при первом доступе через функцию dictGet или SELECT из таблиц с ENGINE = Dictionary. Запрос SYSTEM RELOAD DICTIONARIES
перезагружает такие словари (LOADED). Всегда возвращает Ok.
, независимо от результата обновления словаря.
Синтаксис
RELOAD DICTIONARY
Полностью перезагружает словарь dictionary_name
, независимо от состояния словаря (LOADED / NOT_LOADED / FAILED). Всегда возвращает Ok.
, независимо от результата обновления словаря.
Статус словаря можно проверить, запросив таблицу system.dictionaries
.
RELOAD MODELS
Эта команда и SYSTEM RELOAD MODEL
просто выгружают модели catboost из clickhouse-library-bridge. Функция catboostEvaluate()
загружает модель при первом доступе, если она еще не загружена.
Выгружает все модели CatBoost.
Синтаксис
RELOAD MODEL
Выгружает модель CatBoost по пути model_path
.
Синтаксис
RELOAD FUNCTIONS
Перезагружает все зарегистрированные выполняемые пользовательские функции или одну из них из файла конфигурации.
Синтаксис
RELOAD ASYNCHRONOUS METRICS
Пересчитывает все асинхронные метрики. Поскольку асинхронные метрики периодически обновляются на основе настройки asynchronous_metrics_update_period_s, вручную обновлять их с помощью этой команды обычно не требуется.
DROP DNS CACHE
Очищает внутренний кэш DNS ClickHouse. Иногда (для старых версий ClickHouse) необходимо использовать эту команду при изменении инфраструктуры (изменение IP-адреса другого сервера ClickHouse или сервера, используемого словарями).
Для более удобного (автоматического) управления кэшем см. параметры disable_internal_dns_cache, dns_cache_max_entries, dns_cache_update_period.
DROP MARK CACHE
Очищает кэш меток.
DROP REPLICA
Мертвые реплики таблиц ReplicatedMergeTree
могут быть удалены с использованием следующего синтаксиса:
Запросы удалят путь реплики ReplicatedMergeTree
в ZooKeeper. Это полезно, когда реплика мертва, и ее метаданные не могут быть удалены из ZooKeeper с помощью DROP TABLE
, потому что такой таблицы больше нет. Это удалит только неактивную/устаревшую реплику, и нельзя удалить локальную реплику, для этого используйте DROP TABLE
. DROP REPLICA
не удаляет никаких таблиц и не удаляет никаких данных или метаданных с диска.
Первый запрос удаляет метаданные реплики 'replica_name'
таблицы database.table
. Второй делает то же самое для всех реплицируемых таблиц в базе данных. Третий делает то же самое для всех реплицируемых таблиц на локальном сервере. Четвертый полезен для удаления метаданных мертвой реплики, когда все другие реплики таблицы были удалены. Для этого необходимо явно указать путь к таблице. Он должен быть тем же путем, который был передан в первом аргументе движка ReplicatedMergeTree
при создании таблицы.
DROP DATABASE REPLICA
Мертвые реплики Replicated
баз данных могут быть удалены с использованием следующего синтаксиса:
Похоже на SYSTEM DROP REPLICA
, но удаляет путь реплики Replicated
базы данных из ZooKeeper, когда нет базы данных для выполнения DROP DATABASE
. Обратите внимание, что он не удаляет реплики ReplicatedMergeTree
(поэтому вам может понадобиться и SYSTEM DROP REPLICA
). Имена шардов и реплик — это имена, которые были указаны в аргументах движка Replicated
при создании базы данных. Также эти имена можно получить из столбцов database_shard_name
и database_replica_name
в system.clusters
. Если опция FROM SHARD
отсутствует, то replica_name
должен быть полным именем реплики в формате shard_name|replica_name
.
DROP UNCOMPRESSED CACHE
Очищает кэш несжатых данных. Кэш несжатых данных включается/выключается с помощью настройки запроса/профиля use_uncompressed_cache
. Его размер можно настроить с помощью настройки уровня сервера uncompressed_cache_size
.
DROP COMPILED EXPRESSION CACHE
Очищает кэш скомпилированных выражений. Кэш скомпилированных выражений включается/выключается с помощью настройки запроса/профиля compile_expressions
.
DROP QUERY CONDITION CACHE
Очищает кэш условий запроса.
DROP QUERY CACHE
Очищает кэш запросов. Если указана метка, удаляются только записи кэша запросов с указанной меткой.
DROP FORMAT SCHEMA CACHE
Очищает кэш для схем, загруженных из format_schema_path
.
Поддерживаемые форматы:
- Protobuf
FLUSH LOGS
Сбрасывает буферизированные сообщения журналов в системные таблицы, например, system.query_log. В основном полезно для отладки, так как большинство системных таблиц имеют интервал сброса по умолчанию в 7,5 секунд. Это также создаст системные таблицы, даже если очередь сообщений пуста.
Если вы не хотите сбрасывать все, вы можете сбросить один или несколько отдельных журналов, передав либо их имя, либо целевую таблицу:
RELOAD CONFIG
Перезагружает конфигурацию ClickHouse. Используется, когда конфигурация хранится в ZooKeeper. Обратите внимание, что SYSTEM RELOAD CONFIG
не перезагружает конфигурацию USER
, хранящуюся в ZooKeeper, он только перезагружает конфигурацию USER
, которая хранится в users.xml
. Чтобы перезагрузить всю конфигурацию USER
, используйте SYSTEM RELOAD USERS
.
RELOAD USERS
Перезагружает все хранилища доступа, включая: users.xml, хранение доступа на локальном диске, реплицируемое (в ZooKeeper) хранилище доступа.
SHUTDOWN
Обычно отключает ClickHouse (как service clickhouse-server stop
/ kill {$pid_clickhouse-server}
)
KILL
Прерывает процесс ClickHouse (как kill -9 {$ pid_clickhouse-server}
)
Управление распределенными таблицами
ClickHouse может управлять распределенными таблицами. Когда пользователь вставляет данные в эти таблицы, ClickHouse сначала создает очередь данных, которые должны быть отправлены на узлы кластера, а затем асинхронно отправляет их. Вы можете управлять обработкой очереди с помощью запросов STOP DISTRIBUTED SENDS
, FLUSH DISTRIBUTED и START DISTRIBUTED SENDS
. Вы также можете синхронно вставлять распределенные данные с помощью настройки distributed_foreground_insert
.
STOP DISTRIBUTED SENDS
Отключает фоновое распределение данных при вставке данных в распределенные таблицы.
В случае включенной опции prefer_localhost_replica
(по умолчанию), данные все равно будут вставлены на локальный шард.
FLUSH DISTRIBUTED
Принуждает ClickHouse отправлять данные на узлы кластера синхронно. Если какие-либо узлы недоступны, ClickHouse выдает исключение и останавливает выполнение запроса. Вы можете повторять запрос, пока он не будет успешным, что произойдет, когда все узлы снова станут доступными.
Вы также можете переопределить некоторые настройки через клаузу SETTINGS
, это может быть полезно для избежания некоторых временных ограничений, таких как max_concurrent_queries_for_all_users
или max_memory_usage
.
Каждый ожидающий блок хранится на диске с настройками из первоначального запроса INSERT, поэтому иногда вы можете захотеть переопределить настройки.
START DISTRIBUTED SENDS
Включает фоновое распределение данных при вставке данных в распределенные таблицы.
STOP LISTEN
Закрывает сокет и корректно завершает существующие соединения с сервером на указанном порту с указанным протоколом.
Однако, если соответствующие настройки протокола не были указаны в конфигурации clickhouse-server, эта команда не окажет никакого эффекта.
- Если указан модификатор
CUSTOM 'protocol'
, будет остановлен пользовательский протокол с указанным именем, определенным в разделе протоколов конфигурации сервера. - Если указан модификатор
QUERIES ALL [EXCEPT .. [,..]]
, останавливаются все протоколы, за исключением указанных в составеEXCEPT
. - Если указан модификатор
QUERIES DEFAULT [EXCEPT .. [,..]]
, останавливаются все протоколы по умолчанию, за исключением указанных в составеEXCEPT
. - Если указан модификатор
QUERIES CUSTOM [EXCEPT .. [,..]]
, останавливаются все пользовательские протоколы, за исключением указанных в составеEXCEPT
.
START LISTEN
Разрешает устанавливать новые соединения на указанных протоколах.
Однако, если сервер на указанном порту и протоколе не был остановлен с помощью команды SYSTEM STOP LISTEN, эта команда не окажет никакого эффекта.
Управление таблицами MergeTree
ClickHouse может управлять фоновой обработкой в таблицах MergeTree.
STOP MERGES
Предоставляет возможность остановить фоновое слияние для таблиц в семействе MergeTree:
Таблица DETACH / ATTACH
запустит фоновое слияние для таблицы, даже если слияния были остановлены для всех таблиц MergeTree ранее.
START MERGES
Предоставляет возможность запустить фоновое слияние для таблиц в семействе MergeTree:
STOP TTL MERGES
Предоставляет возможность остановить фоновое удаление старых данных в соответствии с TTL выражением для таблиц в семействе MergeTree: Возвращает Ok.
, даже если таблица не существует или у таблицы нет движка MergeTree. Возвращает ошибку, когда база данных не существует:
START TTL MERGES
Предоставляет возможность запустить фоновое удаление старых данных в соответствии с TTL выражением для таблиц в семействе MergeTree: Возвращает Ok.
, даже если таблица не существует. Возвращает ошибку, когда база данных не существует:
STOP MOVES
Предоставляет возможность остановить фоновое перемещение данных в соответствии с TTL таблицы изразом с TO VOLUME или TO DISK клаузой для таблиц в семействе MergeTree: Возвращает Ok.
, даже если таблица не существует. Возвращает ошибку, когда база данных не существует:
START MOVES
Предоставляет возможность начать фоновое перемещение данных в соответствии с TTL таблицы изразом с TO VOLUME и TO DISK клаузой для таблиц в семействе MergeTree: Возвращает Ok.
, даже если таблица не существует. Возвращает ошибку, когда база данных не существует:
SYSTEM UNFREEZE
Очищает замороженный бэкап с указанным именем из всех дисков. См. больше о размораживании отдельных частей в ALTER TABLE table_name UNFREEZE WITH NAME
WAIT LOADING PARTS
Ожидает, пока все асинхронно загружаемые части данных таблицы (устаревшие части данных) не будут загружены.
Управление таблицами ReplicatedMergeTree
ClickHouse может управлять фоновыми процессами, связанными с репликацией в таблицах ReplicatedMergeTree.
STOP FETCHES
Предоставляет возможность остановить фоновые загрузки вставленных частей для таблиц в семействе ReplicatedMergeTree
: Всегда возвращает Ok.
, независимо от движка таблицы и даже если таблица или база данных не существуют.
START FETCHES
Предоставляет возможность запустить фоновые загрузки вставленных частей для таблиц в семействе ReplicatedMergeTree
: Всегда возвращает Ok.
, независимо от движка таблицы и даже если таблица или база данных не существуют.
STOP REPLICATED SENDS
Предоставляет возможность остановить фоновую отправку другим репликам в кластере для новых вставленных частей для таблиц в семействе ReplicatedMergeTree
:
START REPLICATED SENDS
Предоставляет возможность запустить фоновую отправку другим репликам в кластере для новых вставленных частей для таблиц в семействе ReplicatedMergeTree
:
STOP REPLICATION QUEUES
Предоставляет возможность остановить фоновые задачи загрузки из очередей репликации, которые хранятся в ZooKeeper для таблиц в семействе ReplicatedMergeTree
. Возможные фоновые типы задач - слияния, загрузки, мутации, DDL операторы с клаузой ON CLUSTER:
START REPLICATION QUEUES
Предоставляет возможность запустить фоновые задачи загрузки из очередей репликации, которые хранятся в ZooKeeper для таблиц в семействе ReplicatedMergeTree
. Возможные фоновые типы задач - слияния, загрузки, мутации, DDL операторы с клаузой ON CLUSTER:
STOP PULLING REPLICATION LOG
Останавливает загрузку новых записей из журналов репликации в очередь репликации в таблице ReplicatedMergeTree
.
START PULLING REPLICATION LOG
Отменяет SYSTEM STOP PULLING REPLICATION LOG
.
SYNC REPLICA
Ожидает, пока таблица ReplicatedMergeTree
будет синхронизирована с другими репликами в кластере, но не более receive_timeout
секунд.
После выполнения этого запроса [db.]replicated_merge_tree_family_table_name
извлекает команды из общего реплицированного лога в свою собственную очередь репликации, а затем запрос ждет, пока реплика обработает все извлеченные команды. Поддерживаются следующие модификаторы:
- Если был указан модификатор
STRICT
, то запрос ждет, пока очередь репликации не станет пустой. ВерсияSTRICT
может никогда не удаться, если в очереди репликации постоянно появляются новые записи. - Если был указан модификатор
LIGHTWEIGHT
, то запрос ждет только обработки записейGET_PART
,ATTACH_PART
,DROP_RANGE
,REPLACE_RANGE
иDROP_PART
. Кроме того, модификатор LIGHTWEIGHT поддерживает необязательную клаузу FROM 'srcReplicas', где 'srcReplicas' — это запятая-разделенный список имен исходных реплик. Это расширение позволяет более целенаправленно синхронизировать, сосредоточив внимание только на задачах репликации, происходящих от указанных исходных реплик. - Если был указан модификатор
PULL
, то запрос извлекает новые записи из очереди репликации из ZooKeeper, но не ожидает обработки ничего.
SYNC DATABASE REPLICA
Ожидает, пока указанная реплицированная база данных применит все изменения схемы из DDL-очереди этой базы данных.
Синтаксис
RESTART REPLICA
Предоставляет возможность повторной инициализации состояния сессии ZooKeeper для таблицы ReplicatedMergeTree
, будет сравнивать текущее состояние с ZooKeeper как с источником истины и добавлять задачи в очередь ZooKeeper, если это необходимо. Инициализация очереди репликации на основе данных ZooKeeper происходит так же, как для оператора ATTACH TABLE
. На короткое время таблица будет недоступна для любых операций.
RESTORE REPLICA
Восстанавливает реплику, если данные [возможно] присутствуют, но метаданные ZooKeeper потеряны.
Работает только на таблицах ReplicatedMergeTree
, доступных только для чтения.
Запрос можно выполнить после:
- Потери корня ZooKeeper
/
. - Потери пути реплик
/replicas
. - Потери индивидуального пути реплики
/replicas/replica_name/
.
Реплика присоединяет локально найденные части и отправляет информацию о них в ZooKeeper. Части, присутствующие на реплике до потери метаданных, не загружаются заново из других, если они не устарели (поэтому восстановление реплики не означает повторное скачивание всех данных по сети).
Части во всех состояниях перемещаются в папку detached/
. Части, активные до потери данных (подтвержденные), присоединяются.
Синтаксис
Альтернативный синтаксис:
Пример
Создание таблицы на нескольких серверах. После потери метаданных реплики в ZooKeeper таблица будет присоединена как доступная только для чтения, поскольку метаданные отсутствуют. Последний запрос нужно выполнить на каждой реплике.
Другой способ:
RESTART REPLICAS
Предоставляет возможность повторной инициализации состояния сессий ZooKeeper для всех таблиц ReplicatedMergeTree
, будет сравнивать текущее состояние с ZooKeeper как источником истины и добавлять задачи в очередь ZooKeeper, если это необходимо.
DROP FILESYSTEM CACHE
Позволяет удалить кэш файловой системы.
SYNC FILE CACHE
Это слишком тяжело и может быть использовано неправильно.
Выполнит системный вызов синхронизации.
LOAD PRIMARY KEY
Загружает первичные ключи для указанной таблицы или для всех таблиц.
UNLOAD PRIMARY KEY
Выгружает первичные ключи для указанной таблицы или для всех таблиц.
Управление обновляемыми материализованными представлениями
Команды для управления фоновыми заданиями, выполняемыми обновляемыми материализованными представлениями
Следите за system.view_refreshes
во время их использования.
REFRESH VIEW
Запуск немедленного обновления данного представления вне расписания.
REFRESH VIEW
Ожидание завершения текущего обновления. Если обновление завершилось неудачей, будет выброшено исключение. Если обновление не выполняется, завершится немедленно, выбрасывая исключение, если предыдущее обновление завершилось неудачей.
STOP VIEW, STOP VIEWS
Отключает периодическое обновление данного представления или всех обновляемых представлений. Также отменяет обновление, если оно выполняется.
START VIEW, START VIEWS
Включает периодическое обновление для данного представления или всех обновляемых представлений. Никакое немедленное обновление не вызывается.
CANCEL VIEW
Если для данного представления выполняется обновление, прерывает и отменяет его. В противном случае ничего не делает.
SYSTEM WAIT VIEW
Ожидает завершения выполняемого обновления. Если обновление не выполняется, возвращает немедленно. Если последняя попытка обновления завершилась неудачей, сообщает об ошибке.
Может быть использовано сразу после создания нового обновляемого материализованного представления (без ключевого слова EMPTY) для того, чтобы дождаться завершения начального обновления.