Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Source de dictionnaire MySQL

Exemple de paramètres :

SOURCE(MYSQL(
    port 3306
    user 'clickhouse'
    password 'qwerty'
    replica(host 'example01-1' priority 1)
    replica(host 'example01-2' priority 1)
    db 'db_name'
    table 'table_name'
    where 'id=10'
    invalidate_query 'SQL_QUERY'
    fail_on_connection_loss 'true'
    query 'SELECT id, value_1, value_2 FROM db_name.table_name'
    enable_compression 1
))

Champs des paramètres :

Paramètre Description
port Port du serveur MySQL. Vous pouvez le spécifier pour toutes les répliques, ou individuellement pour chacune d’elles (dans <replica>).
user Nom de l’utilisateur MySQL. Vous pouvez le spécifier pour toutes les répliques, ou individuellement pour chacune d’elles (dans <replica>).
password Mot de passe de l’utilisateur MySQL. Vous pouvez le spécifier pour toutes les répliques, ou individuellement pour chacune d’elles (dans <replica>).
replica Section de configuration des répliques. Il peut y avoir plusieurs sections.
replica/host Hôte MySQL.
replica/priority Priorité de la réplique. Lors d’une tentative de connexion, ClickHouse parcourt les répliques par ordre de priorité. Plus le nombre est faible, plus la priorité est élevée.
db Nom de la base de données.
table Nom de la table.
where Critère de sélection. La syntaxe des conditions est la même que celle de la clause WHERE dans MySQL, par exemple id > 10 AND id < 20. Facultatif.
invalidate_query Requête permettant de vérifier l’état du dictionnaire. Facultatif. Pour en savoir plus, consultez la section Actualisation des données du dictionnaire à l’aide de LIFETIME.
fail_on_connection_loss Contrôle le comportement du serveur en cas de perte de connexion. Si true, une exception est immédiatement levée si la connexion entre le client et le serveur est perdue. Si false, le serveur réessaie de récupérer les données au moins trois fois avant de signaler une erreur. Notez que ces nouvelles tentatives augmentent le temps de réponse. Valeur par défaut : false.
query Requête personnalisée. Facultatif.
enable_compression Active la compression zlib pour la connexion utilisant le protocole MySQL. Lorsqu’elle est définie sur 1, ClickHouse demande une compression au niveau du protocole au serveur MySQL. Peut également être définie pour chaque réplique dans <replica>. Valeur par défaut : 0.
ssl_ca_pem Contenu du certificat de l’autorité de certification (CA) utilisé pour vérifier le certificat du serveur MySQL. Facultatif.
ssl_cert_pem Contenu du certificat client, pour l’authentification basée sur certificat. Facultatif.
ssl_key_pem Contenu de la clé privée associée à ssl_cert_pem. Facultatif.
ssl_ca, ssl_cert, ssl_key Les mêmes identifiants sous forme de chemins vers des fichiers sur le serveur. Autorisés uniquement pour un dictionnaire défini dans un fichier de configuration du serveur, ou via une collection nommée qui y est définie, voir ci-dessous. Facultatif.

Il est possible de se connecter à MySQL sur un hôte local via des sockets. Pour ce faire, définissez host et socket.

Exemple de paramètres :

SOURCE(MYSQL(
    host 'localhost'
    socket '/path/to/socket/file.sock'
    user 'clickhouse'
    password 'qwerty'
    db 'db_name'
    table 'table_name'
    where 'id=10'
    invalidate_query 'SQL_QUERY'
    fail_on_connection_loss 'true'
    query 'SELECT id, value_1, value_2 FROM db_name.table_name'
))
Navigation