Системные команды
PERезагрузить встроенные словари
Перезагружает все внутренние словари.
По умолчанию внутренние словари отключены.
Всегда возвращает Ok.
независимо от результата обновления внутреннего словаря.
PERезагрузить словари
Перезагружает все словари, которые были успешно загружены ранее.
По умолчанию словари загружаются лениво (см. dictionaries_lazy_load), поэтому вместо автоматической загрузки при запуске они инициализируются при первом доступе через функцию dictGet или SELECT из таблиц с ENGINE = Dictionary. Запрос SYSTEM RELOAD DICTIONARIES
перезагружает такие словари (ЗАГРУЖЕНЫ).
Всегда возвращает Ok.
независимо от результата обновления словаря.
Синтаксис
PERезагрузить словарь
Полностью перезагружает словарь dictionary_name
, независимо от состояния словаря (ЗАГРУЖЕН / НЕ ЗАГРУЖЕН / ОШИБКА).
Всегда возвращает Ok.
независимо от результата обновления словаря.
Состояние словаря можно проверить, выполнив запрос к таблице system.dictionaries
.
PERезагрузить модели
Эта команда и SYSTEM RELOAD MODEL
просто выгружают модели catboost из clickhouse-library-bridge. Функция catboostEvaluate()
загружает модель при первом доступе, если она еще не загружена.
Выгружает все модели CatBoost.
Синтаксис
PERезагрузить модель
Выгружает модель CatBoost по model_path
.
Синтаксис
PERезагрузить функции
Перезагружает все зарегистрированные исполняемые пользовательские функции или одну из них из конфигурационного файла.
Синтаксис
PERезагрузить асинхронные метрики
Переоценивает все асинхронные метрики. Поскольку асинхронные метрики периодически обновляются на основе параметра asynchronous_metrics_update_period_s, вручную обновлять их с помощью этого запроса обычно не нужно.
Удалить DNS кэш
Очищает внутренний DNS-кэш ClickHouse. Иногда (для старых версий ClickHouse) необходимо использовать эту команду при изменении инфраструктуры (изменение IP-адреса другого сервера ClickHouse или сервера, используемого для словарей).
Для более удобного (автоматического) управления кэшем смотрите параметры disable_internal_dns_cache, dns_cache_max_entries, dns_cache_update_period.
Удалить кэш меток
Очищает кэш меток.
Удалить реплику
Старые реплики таблиц ReplicatedMergeTree
можно удалить с помощью следующего синтаксиса:
Запросы удалят путь реплики ReplicatedMergeTree
в ZooKeeper. Это полезно, когда реплика потеряна, и ее метаданные не могут быть удалены из ZooKeeper с помощью DROP TABLE
, потому что такой таблицы больше не существует. Это удалит только неактивную/устаревшую реплику и не сможет удалить локальную реплику, пожалуйста, используйте DROP TABLE
для этого. DROP REPLICA
не удаляет никакие таблицы и не удаляет никаких данных или метаданных с диска.
Первый запрос удаляет метаданные реплики 'replica_name'
таблицы database.table
.
Второй запрос делает то же самое для всех реплицируемых таблиц в базе данных.
Третий запрос делает то же самое для всех реплицируемых таблиц на локальном сервере.
Четвертый запрос полезен для удаления метаданных мертвой реплики, когда все другие реплики таблицы были удалены. Он требует явного указания пути к таблице. Он должен быть тем же путем, который был передан в первый аргумент движка ReplicatedMergeTree
при создании таблицы.
Удалить реплику базы данных
Старые реплики 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
.
Удалить кэш несжатых данных
Очищает кэш несжатых данных.
Кэш несжатых данных включается/выключается с помощью настройки запроса/пользователя/профиля use_uncompressed_cache
.
Его размер можно настроить с помощью настройки уровня сервера uncompressed_cache_size
.
Удалить кэш скомпилированных выражений
Очищает кэш скомпилированных выражений.
Кэш скомпилированных выражений включается/выключается с помощью настройки запроса/пользователя/профиля compile_expressions
.
Удалить кэш запросов
Очищает кэш запросов. Если указан тег, удаляются только записи кэша запросов с указанным тегом.
Удалить кэш схем форматов
Очищает кэш для схем, загруженных из format_schema_path
.
Поддерживаемые форматы:
- Protobuf
Сбросить логи
Сбрасывает буферизованные сообщения журнала в системные таблицы, например, system.query_log. Главное предназначение - отладка, поскольку у большинства системных таблиц есть интервал сброса по умолчанию 7.5 секунд. Это также создаст системные таблицы, даже если очередь сообщений пуста.
Если вы не хотите сбрасывать все, вы можете сбросить один или несколько отдельных журналов, передав либо их имя, либо их целевую таблицу:
PERезагрузить конфигурацию
Перезагружает конфигурацию ClickHouse. Используется, когда конфигурация хранится в ZooKeeper. Обратите внимание, что SYSTEM RELOAD CONFIG
не перезагружает конфигурацию USER
, хранящуюся в ZooKeeper, он перезагружает только конфигурацию USER
, хранящуюся в users.xml
. Для перезагрузки всей конфигурации USER
используйте SYSTEM RELOAD USERS
PERезагрузить пользователей
Перезагружает все хранилища доступа, включая: users.xml, локальное хранилище доступа, реплицированное (в ZooKeeper) хранилище доступа.
ВЫКЛЮЧИТЬ
Обычно отключает ClickHouse (как service clickhouse-server stop
/ kill {$pid_clickhouse-server}
)
УБИТЬ
Прерывает процесс ClickHouse (как kill -9 {$ pid_clickhouse-server}
)
Управление распределенными таблицами
ClickHouse может управлять распределенными таблицами. Когда пользователь вставляет данные в эти таблицы, ClickHouse сначала создает очередь данных, которые должны быть отправлены узлам кластера, затем асинхронно отправляет их. Вы можете управлять обработкой очереди с помощью запросов STOP DISTRIBUTED SENDS
, FLUSH DISTRIBUTED и START DISTRIBUTED SENDS
. Вы также можете синхронно вставлять распределенные данные с помощью настройки distributed_foreground_insert
.
ОСТАНОВИТЬ РАСПРЕДЕЛЕННЫЕ ОТПРАВКИ
Отключает распределение данных в фоновом режиме при вставке данных в распределенные таблицы.
Если включена prefer_localhost_replica
(по умолчанию), данные будут вставляться в локальный шард в любом случае.
СБРОСИТЬ РАСПРЕДЕЛЕННЫЕ
Заставляет ClickHouse отправить данные узлам кластера синхронно. Если какие-либо узлы недоступны, ClickHouse выбрасывает исключение и останавливает выполнение запроса. Вы можете повторять запрос до тех пор, пока он не выполнится успешно, что произойдет, когда все узлы снова станут доступны.
Вы также можете переопределить некоторые настройки через оператор SETTINGS
, это может быть полезно, чтобы избежать некоторых временных ограничений, таких как max_concurrent_queries_for_all_users
или max_memory_usage
.
Каждый ожидающий блок хранится на диске с настройками из первоначального запроса INSERT, поэтому иногда вы можете захотеть переопределить настройки.
НАЧАТЬ РАСПРЕДЕЛЕННЫЕ ОТПРАВКИ
Включает распределение данных в фоновом режиме при вставке данных в распределенные таблицы.
ОСТАНОВИТЬ СЛУШАНИЕ
Закрывает сокет и корректно завершает существующие подключения к серверу на указанном порту с указанным протоколом.
Однако, если соответствующие настройки протокола не были указаны в конфигурации clickhouse-server, эта команда не будет иметь эффекта.
- Если указан модификатор
CUSTOM 'protocol'
, будет остановлен пользовательский протокол с указанным именем, определенным в разделе протоколов конфигурации сервера. - Если указан модификатор
QUERIES ALL [EXCEPT .. [,..]]
, все протоколы останавливаются, если не указано с помощью условияEXCEPT
. - Если указан модификатор
QUERIES DEFAULT [EXCEPT .. [,..]]
, останавливаются все стандартные протоколы, если не указано с помощью условияEXCEPT
. - Если указан модификатор
QUERIES CUSTOM [EXCEPT .. [,..]]
, останавливаются все пользовательские протоколы, если не указано с помощью условияEXCEPT
.
НАЧАТЬ СЛУШАНИЕ
Позволяет устанавливать новые подключения по указанным протоколам.
Однако, если сервер на указанном порту и протоколе не был остановлен с помощью команды SYSTEM STOP LISTEN, эта команда не будет иметь эффекта.
Управление таблицами MergeTree
ClickHouse может управлять фоновыми процессами в таблицах MergeTree.
ОСТАНОВИТЬ СЛИЯНИЯ
Предоставляет возможность остановить фоновое слияние для таблиц в семействе MergeTree:
DETACH / ATTACH
таблица запустит фоновое слияние для таблицы, даже если слияния были остановлены для всех таблиц MergeTree ранее.
НАЧАТЬ СЛИЯНИЯ
Предоставляет возможность запустить фоновое слияние для таблиц в семействе MergeTree:
ОСТАНОВИТЬ СЛИЯНИЯ TTL
Предоставляет возможность остановить фоновое удаление старых данных в соответствии с выражением TTL для таблиц в семействе MergeTree:
Возвращает Ok.
даже если таблицы не существует или у таблицы нет движка MergeTree. Возвращает ошибку, если базы данных не существует:
НАЧАТЬ СЛИЯНИЯ TTL
Предоставляет возможность запустить фоновое удаление старых данных в соответствии с выражением TTL для таблиц в семействе MergeTree:
Возвращает Ok.
даже если таблицы не существует. Возвращает ошибку, если базы данных не существует:
ОСТАНОВИТЬ ПЕРЕПИСКИ
Предоставляет возможность остановить фоновое перемещение данных в соответствии с выражением TTL таблицы с TO VOLUME или TO DISK для таблиц в семействе MergeTree:
Возвращает Ok.
даже если таблицы не существует. Возвращает ошибку, если базы данных не существует:
НАЧАТЬ ПЕРЕПИСКИ
Предоставляет возможность запустить фоновое перемещение данных в соответствии с выражением TTL таблицы с TO VOLUME и TO DISK для таблиц в семействе MergeTree:
Возвращает Ok.
даже если таблицы не существует. Возвращает ошибку, если базы данных не существует:
SYSTEM UNFREEZE
Очищает замороженный бэкап с указанным именем со всех дисков. См. больше о размораживании отдельных частей в ALTER TABLE table_name UNFREEZE WITH NAME
ЖДАТЬ ЗАГРУЖЕННЫЕ ЧАСТИ
Ждет, пока все асинхронно загружаемые части данных таблицы (устаревшие части данных) не будут загружены.
Управление таблицами ReplicatedMergeTree
ClickHouse может управлять процессами, связанными с фоновыми репликациями в таблицах ReplicatedMergeTree.
ОСТАНОВИТЬ ИЗВЛЕЧЕНИЯ
Предоставляет возможность остановить фоновое извлечение вставленных частей для таблиц в семействе ReplicatedMergeTree
:
Всегда возвращает Ok.
независимо от движка таблицы и даже если таблицы или базы данных не существуют.
НАЧАТЬ ИЗВЛЕЧЕНИЯ
Предоставляет возможность запустить фоновое извлечение вставленных частей для таблиц в семействе ReplicatedMergeTree
:
Всегда возвращает Ok.
независимо от движка таблицы и даже если таблицы или базы данных не существуют.
ОСТАНОВИТЬ РАСПРЕДЕЛЕННЫЕ ОТПРАВКИ
Предоставляет возможность остановить фоновую отправку другим репликам в кластере для новых вставленных частей для таблиц в семействе ReplicatedMergeTree
:
НАЧАТЬ РАСПРЕДЕЛЕННЫЕ ОТПРАВКИ
Предоставляет возможность запустить фоновую отправку другим репликам в кластер для новых вставленных частей для таблиц в семействе ReplicatedMergeTree
:
ОСТАНОВИТЬ ОЧЕРЕДИ РЕПЛИКАЦИИ
Предоставляет возможность остановить фоновые извлечение задач из очередей репликации, хранящихся в ZooKeeper для таблиц в семействе ReplicatedMergeTree
. Возможные типы фоновых задач - слияния, извлечения, мутации, операторы DDL с клаузой ON CLUSTER:
НАЧАТЬ ОЧЕРЕДИ РЕПЛИКАЦИИ
Предоставляет возможность запустить фоновые извлечения задач из очередей репликации, хранящихся в ZooKeeper для таблиц в семействе ReplicatedMergeTree
. Возможные типы фоновых задач - слияния, извлечения, мутации, операторы DDL с клаузой ON CLUSTER:
ОСТАНОВИТЬ ЗАГРУЗКУ ЖУРНАЛА РЕПЛИКАЦИИ
Останавливает загрузку новых записей из журнала репликации в очередь репликации в таблице ReplicatedMergeTree
.
НАЧАТЬ ЗАГРУЗКУ ЖУРНАЛА РЕПЛИКАЦИИ
Отменяет SYSTEM STOP PULLING REPLICATION LOG
.
СИНХРОНИЗИРОВАТЬ РЕПЛИКУ
Ждет, пока таблица 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, но не ждет обработки.
СИНХРОНИЗИРОВАТЬ РЕПЛИКУ БАЗЫ ДАННЫХ
Ждет, пока указанная реплицированная база данных применит все изменения схемы из очереди DDL этой базы данных.
Синтаксис
ПЕРЕЗАПУСТИТЬ РЕПЛИКУ
Предоставляет возможность повторной инициализации состояния сессии ZooKeeper для таблицы ReplicatedMergeTree
, будет сравнивать текущее состояние с ZooKeeper как источником правды и при необходимости добавит задачи в очередь ZooKeeper.
Инициализация очереди репликаций на основе данных ZooKeeper происходит так же, как и для оператора ATTACH TABLE
. На короткое время таблица будет недоступна для любых операций.
ВОССТАНОВИТЬ РЕПЛИКУ
Восстанавливает реплику, если данные [возможно] присутствуют, но метаданные ZooKeeper потеряны.
Работает только на таблицах ReplicatedMergeTree
с режимом только для чтения.
Один может выполнить запрос после:
- потери корневого каталога ZooKeeper
/
. - потери пути к репликам
/replicas
. - потери индивидуального пути к реплике
/replicas/replica_name/
.
Реплика прикрепляет локально найденные части и отправляет информацию о них в ZooKeeper. Части, присутствующие на реплике до потери метаданных, не будут повторно загружены из других, если не устарели (поэтому восстановление реплики не означает повторную загрузку всех данных по сети).
Части во всех состояниях перемещаются в папку detached/
. Части, активные до потери данных (проверенные), прикрепляются.
Синтаксис
Альтернативный синтаксис:
Пример
Создание таблицы на нескольких серверах. После потери метаданных реплики в ZooKeeper таблица будет прикреплена как только для чтения, так как метаданные отсутствуют. Последний запрос необходимо выполнить на каждой реплике.
Другой способ:
ПЕРЕЗАПУСТИТЬ РЕПЛИКИ
Предоставляет возможность повторной инициализации состояния сессий ZooKeeper для всех таблиц ReplicatedMergeTree
, будет сравнивать текущее состояние с ZooKeeper как источником правды и при необходимости добавит задачи в очередь ZooKeeper.
УДАЛИТЬ КЭШ ФАЙЛОВОЙ СИСТЕМЫ
Позволяет удалить кэш файловой системы.
СИНХРОНИЗИРОВАТЬ КЭШ ФАЙЛОВ
Это слишком тяжелая операция и может быть использована неправильно.
Сделает системный вызов синхронизации.
ЗАГРУЗИТЬ ПЕРВИЧНЫЙ КЛЮЧ
Загружает первичные ключи для указанной таблицы или для всех таблиц.
ВЫГРУЗИТЬ ПЕРВИЧНЫЙ КЛЮЧ
Выгружает первичные ключи для указанной таблицы или для всех таблиц.
Управление обновляемыми материализованными представлениями
Команды для управления фоновыми задачами, выполняемыми обновляемыми материализованными представлениями
Следите за system.view_refreshes
, пока используете их.
ОБНОВИТЬ ПРЕДСТАВЛЕНИЕ
Запускает немедленное обновление расписания заданного представления.
ОБНОВИТЬ ПРЕДСТАВЛЕНИЕ
Ждет, пока текущее обновление не завершится. Если обновление завершится с ошибкой, выбрасывает исключение. Если обновление не выполняется, завершается немедленно, выбрасывая исключение, если предыдущее обновление завершилось с ошибкой.
ОСТАНОВИТЬ ПРЕДСТАВЛЕНИЕ, ОСТАНОВИТЬ ПРЕДСТАВЛЕНИЯ
Отключает периодическое обновление заданного представления или всех обновляемых представлений. Если обновление выполняется, отменяет его также.
НАЧАТЬ ПРЕДСТАВЛЕНИЕ, НАЧАТЬ ПРЕДСТАВЛЕНИЯ
Включает периодическое обновление заданного представления или всех обновляемых представлений. Немедленное обновление не вызвано.
ОТМЕНИТЬ ПРЕДСТАВЛЕНИЕ
Если обновление выполняется для заданного представления, прерывает и отменяет его. В противном случае ничего не делать.
SYSTEM WAIT VIEW
Ждет завершения текущего обновления. Если обновление не выполняется, возвращает немедленно. Если последняя попытка обновления завершилась с ошибкой, сообщает об ошибке.
Может использоваться сразу после создания нового обновляемого материализованного представления (без ключевого слова EMPTY), чтобы дождаться завершения первоначального обновления.