ClickHouse/docs/fr/operations/troubleshooting.md
Ivan Blinkov d91c97d15d
[docs] replace underscores with hyphens (#10606)
* Replace underscores with hyphens

* remove temporary code

* fix style check

* fix collapse
2020-04-30 21:19:18 +03:00

6.8 KiB
Raw Blame History

machine_translated machine_translated_rev toc_priority toc_title
true f865c9653f 46 Dépannage

Dépannage

Installation

Vous Ne Pouvez Pas Obtenir De Paquets Deb à Partir Du référentiel Clickhouse Avec Apt-get

  • Vérifiez les paramètres du pare-feu.
  • Si vous ne pouvez pas accéder au référentiel pour quelque raison que ce soit, téléchargez les packages comme décrit dans Prise en main article et les installer manuellement en utilisant le sudo dpkg -i <packages> commande. Vous aurez aussi besoin d tzdata paquet.

Connexion Au Serveur

Problèmes possibles:

  • Le serveur nest pas en cours dexécution.
  • Paramètres de configuration inattendus ou incorrects.

Le Serveur NEst Pas En Cours DExécution

Vérifiez si le serveur est runnnig

Commande:

$ sudo service clickhouse-server status

Si le serveur nest pas en cours dexécution, démarrez-le avec la commande:

$ sudo service clickhouse-server start

Vérifier les journaux

Le journal principal de clickhouse-server est dans /var/log/clickhouse-server/clickhouse-server.log par défaut.

Si le serveur a démarré avec succès, vous devriez voir les chaînes:

  • <Information> Application: starting up. — Server started.
  • <Information> Application: Ready for connections. — Server is running and ready for connections.

Si clickhouse-server démarrage a échoué avec une erreur de configuration, vous devriez voir la <Error> chaîne avec une description de lerreur. Exemple:

2019.01.11 15:23:25.549505 [ 45 ] {} <Error> ExternalDictionaries: Failed reloading 'event2id' external dictionary: Poco::Exception. Code: 1000, e.code() = 111, e.displayText() = Connection refused, e.what() = Connection refused

Si vous ne voyez pas derreur à la fin du fichier, parcourez le fichier entier à partir de la chaîne:

<Information> Application: starting up.

Si vous essayez de démarrer une deuxième instance de clickhouse-server sur le serveur, vous voyez le journal suivant:

2019.01.11 15:25:11.151730 [ 1 ] {} <Information> : Starting ClickHouse 19.1.0 with revision 54413
2019.01.11 15:25:11.154578 [ 1 ] {} <Information> Application: starting up
2019.01.11 15:25:11.156361 [ 1 ] {} <Information> StatusFile: Status file ./status already exists - unclean restart. Contents:
PID: 8510
Started at: 2019-01-11 15:24:23
Revision: 54413

2019.01.11 15:25:11.156673 [ 1 ] {} <Error> Application: DB::Exception: Cannot lock file ./status. Another server instance in same directory is already running.
2019.01.11 15:25:11.156682 [ 1 ] {} <Information> Application: shutting down
2019.01.11 15:25:11.156686 [ 1 ] {} <Debug> Application: Uninitializing subsystem: Logging Subsystem
2019.01.11 15:25:11.156716 [ 2 ] {} <Information> BaseDaemon: Stop SignalListener thread

Voir système.d les journaux

Si vous ne trouvez aucune information utile dans clickhouse-server journaux ou il ny a pas de journaux, vous pouvez afficher system.d journaux à laide de la commande:

$ sudo journalctl -u clickhouse-server

Démarrer clickhouse-server en mode interactif

$ sudo -u clickhouse /usr/bin/clickhouse-server --config-file /etc/clickhouse-server/config.xml

Cette commande démarre le serveur en tant quapplication interactive avec les paramètres standard du script de démarrage automatique. Dans ce mode clickhouse-server imprime tous les messages dévénement dans la console.

Paramètres De Configuration

Vérifier:

  • Le panneau paramètres.

    Si vous exécutez ClickHouse dans Docker dans un réseau IPv6, assurez-vous que network=host est définie.

  • Paramètres du point de terminaison.

    Vérifier listen_host et tcp_port paramètre.

    Clickhouse server accepte les connexions localhost uniquement par défaut.

  • Paramètres du protocole HTTP.

    Vérifiez les paramètres de protocole pour LAPI HTTP.

  • Paramètres de connexion sécurisés.

    Vérifier:

    Utilisez les paramètres appropriés lors de la connexion. Par exemple, lutilisation de la port_secure paramètre avec clickhouse_client.

  • Les paramètres de lutilisateur.

    Vous utilisez peut-être un mauvais nom dutilisateur ou mot de passe.

Traitement Des Requêtes

Si ClickHouse ne peut pas traiter la requête, il envoie une description derreur au client. Dans le clickhouse-client vous obtenez une description de lerreur dans la console. Si vous utilisez Linterface HTTP, ClickHouse envoie la description de lerreur dans le corps de la réponse. Exemple:

$ curl 'http://localhost:8123/' --data-binary "SELECT a"
Code: 47, e.displayText() = DB::Exception: Unknown identifier: a. Note that there are no tables (FROM clause) in your query, context: required_names: 'a' source_tables: table_aliases: private_aliases: column_aliases: public_columns: 'a' masked_columns: array_join_columns: source_columns: , e.what() = DB::Exception

Si vous commencez à clickhouse-client avec l stack-trace paramètre, ClickHouse renvoie la trace de la pile du serveur avec la description dune erreur.

Vous pouvez voir un message sur une connexion rompue. Dans ce cas, vous pouvez répéter la requête. Si la connexion se rompt chaque fois que vous effectuez la requête, vérifiez les journaux du serveur pour détecter les erreurs.

Efficacité Du Traitement Des Requêtes

Si vous voyez que ClickHouse fonctionne trop lentement, vous devez profiler la charge sur les ressources du serveur et le réseau pour vos requêtes.

Vous pouvez utiliser lutilitaire clickhouse-benchmark pour profiler les requêtes. Il indique le nombre de requêtes traitées par seconde, le nombre de lignes traitées par seconde, et les percentiles de temps de traitement des requêtes.