Устранение неполадок
Установка
Не удаётся импортировать ключи GPG с keyserver.ubuntu.com с помощью apt-key
Команда apt-key в Advanced Package Tool (APT) признана устаревшей. Вместо неё следует использовать команду gpg. Обратитесь к статье руководства по установке.
Не удаётся импортировать ключи GPG с keyserver.ubuntu.com с помощью gpg
- Проверьте, установлен ли у вас
gpg:
Не удаётся получить deb-пакеты из репозитория ClickHouse с помощью apt-get
- Проверьте настройки брандмауэра.
- Если вы по какой-либо причине не можете получить доступ к репозиторию, скачайте пакеты, как описано в статье руководства по установке, и установите их вручную с помощью команды
sudo dpkg -i <packages>. Вам также понадобится пакетtzdata.
Не удаётся обновить deb-пакеты из репозитория ClickHouse с помощью apt-get
Проблема может возникнуть, если был изменён ключ GPG.
Используйте инструкцию со страницы setup, чтобы обновить конфигурацию репозитория.
Вы получаете различные предупреждения при выполнении apt-get update
Полные сообщения предупреждений выглядят как один из следующих вариантов:
Для решения описанной выше проблемы используйте следующий скрипт:
Не удаётся получить пакеты через Yum из‑за неверной подписи
Возможная причина: некорректный кэш; возможно, он был повреждён после обновления ключа GPG в сентябре 2022 года.
Решение — очистить кэш и каталог lib для Yum:
Затем следуйте руководству по установке
Подключение к серверу
Возможные проблемы:
- Сервер не запущен.
- Неожиданные или неверные параметры конфигурации.
Сервер не запущен
Проверьте, запущен ли сервер
Если сервер не запущен, запустите его с помощью команды:
Проверьте логи
Основной лог clickhouse-server по умолчанию находится в /var/log/clickhouse-server/clickhouse-server.log.
Если сервер успешно запустился, вы увидите строки:
<Information> Application: starting up.— Сервер запущен.<Information> Application: Ready for connections.— Сервер работает и готов принимать подключения.
Если запуск clickhouse-server завершился ошибкой конфигурации, вы увидите строку <Error> с описанием ошибки. Например:
Если в конце файла нет сообщения об ошибке, просмотрите весь файл, начиная со строки:
Если вы попытаетесь запустить второй экземпляр clickhouse-server на сервере, вы увидите следующую запись в журнале:
Просмотр журналов system.d
Если вы не находите полезной информации в журналах clickhouse-server или их вовсе нет, вы можете просмотреть журналы system.d, используя команду:
Запустите clickhouse-server в интерактивном режиме
Эта команда запускает сервер как интерактивное приложение со стандартными параметрами скрипта автозапуска. В этом режиме clickhouse-server выводит все сообщения о событиях в консоль.
Параметры конфигурации
Проверьте:
-
Настройки Docker:
- Если вы запускаете ClickHouse в Docker в сети IPv6, убедитесь, что задано
network=host.
- Если вы запускаете ClickHouse в Docker в сети IPv6, убедитесь, что задано
-
Настройки конечной точки (endpoint).
- Проверьте параметры listen_host и tcp_port.
- По умолчанию сервер ClickHouse принимает подключения только с localhost.
-
Настройки протокола HTTP:
- Проверьте параметры протокола для HTTP API.
-
Настройки защищённого соединения.
- Проверьте:
- Параметр tcp_port_secure.
- Параметры для SSL-сертификатов.
- Используйте корректные параметры при подключении. Например, используйте параметр
port_secureсclickhouse_client.
- Проверьте:
-
Настройки пользователей:
- Возможно, вы используете неверное имя пользователя или пароль.
Обработка запросов
Если ClickHouse не может выполнить запрос, он отправляет описание ошибки клиенту. В clickhouse-client вы получаете описание ошибки в консоли. Если вы используете HTTP-интерфейс, ClickHouse отправляет описание ошибки в теле ответа. Например:
Если вы запускаете clickhouse-client с параметром stack-trace, ClickHouse возвращает стек вызовов сервера с описанием ошибки.
Вы можете увидеть сообщение о разорванном соединении. В этом случае можно повторить запрос. Если соединение обрывается каждый раз при выполнении запроса, проверьте журналы сервера на наличие ошибок.
Эффективность обработки запросов
Если вы замечаете, что ClickHouse работает слишком медленно, следует проанализировать нагрузку на ресурсы сервера и сеть при выполнении ваших запросов.
Для профилирования запросов вы можете использовать утилиту clickhouse-benchmark. Она показывает количество запросов, обрабатываемых в секунду, количество строк, обрабатываемых в секунду, а также перцентили времени обработки запросов.