Configuration de ClickHouse Cloud
1
Sélectionnez Connect your app
Après avoir créé votre service ClickHouse Cloud, dans l’écran 
Connect your app, sélectionnez MySQL dans le menu déroulant.
2
Activer l’interface MySQL
Basculez l’interrupteur pour activer l’interface MySQL pour ce service.
Cela ouvrira le port 
Sinon, pour activer l’interface MySQL pour un service existant :
3306 pour ce service et affichera un écran de connexion MySQL avec votre nom d’utilisateur MySQL unique.
3
Sélectionnez Connect
Assurez-vous que votre service est à l’état 
Running, puis cliquez sur le service pour lequel vous souhaitez activer l’interface MySQL.
Sélectionnez “Connect” dans le menu de gauche :
4
Choisissez MySQL
Sélectionnez 
MySQL dans le menu déroulant Connect With.
5
Activer l’interface MySQL
Basculez l’interrupteur pour activer l’interface MySQL pour ce service.
Cela ouvrira le port
3306 pour ce service et affichera votre écran de connexion MySQL, avec votre nom d’utilisateur MySQL unique.
Création d’un utilisateur MySQL readonly dans ClickHouse Cloud
mysql4<subdomain> qui partage le même mot de passe que l’utilisateur default.
La partie <subdomain> correspond à la première partie du nom d’hôte de votre instance ClickHouse Cloud.
Ce format de nom d’utilisateur est requis pour assurer la compatibilité avec les outils qui établissent des connexions sécurisées mais n’incluent pas les données SNI (Server Name Indication) dans leur handshake TLS.
Sans informations SNI, le système ne peut pas effectuer le routage interne correctement ; l’indication de sous-domaine intégrée au nom d’utilisateur fournit donc les informations de routage nécessaires.
Le client de console MySQL est un exemple d’outil qui en a besoin.
Pour un nom d’hôte ClickHouse Cloud tel que
foobar.us-east1.aws.clickhouse.cloud, la partie <subdomain> est égale à foobar, et un nom d’utilisateur MySQL personnalisé pourrait être mysql4foobar_team1.1
Créer un profil de paramètres `readonly`
Créez un profil de paramètres à appliquer à votre utilisateur
readonly,
en définissant le paramètre readonly sur 1 :2
Créer un nouvel utilisateur MySQL `readonly`
Créez un utilisateur avec un nom respectant ce format :Appliquez
readonly_profile au nouvel utilisateur et assurez-vous que le mot de passe est au format double SHA1. Par exemple :3
Accorder au nouvel utilisateur les permissions nécessaires pour accéder aux tables souhaitées
Accordez au nouvel utilisateur les permissions nécessaires pour interagir avec les tables ou bases de données souhaitées.
Par exemple, si vous souhaitez accorder l’accès uniquement à L’utilisateur nouvellement créé peut être utilisé pour se connecter à votre service ClickHouse Cloud via l’interface MySQL.
system.query_log :Pour l’utilisateur
readonly, veillez à n’accorder que des permissions SELECT sur les tables auxquelles vous souhaitez accéder.Troubleshooting de plusieurs utilisateurs MySQL dans ClickHouse Cloud
mysql4<subdomain>_<username>, comme indiqué (ci-dessus).
Configuration d’un serveur ClickHouse sur site
config.xml du serveur
mysql_user utilisant le hash généré :
/etc/clickhouse-server/users.d/mysql_user.xml
password_double_sha1_hex par votre propre hachage Double SHA1 généré.
De plus, il est recommandé d’utiliser use_mysql_types_in_show_columns
pour afficher les types MySQL natifs au lieu de ceux de ClickHouse dans les résultats de la requête SHOW [FULL] COLUMNS,
ce qui permet aux outils de BI d’inspecter correctement le schéma de la base de données lors de l’utilisation de connecteurs MySQL.
Par exemple :
/etc/clickhouse-server/users.d/mysql_user.xml
mysql est disponible, vous pouvez tester la connexion depuis la ligne de commande.
En utilisant l’exemple de nom d’utilisateur (mysql_user) et de mot de passe (LZOQYnqQN4L/T6L0) ci-dessus, la ligne de commande serait :
config.xml, décommentez les lignes suivantes pour écouter sur toutes les adresses :
Connexion de Tableau Online à ClickHouse (sur site sans SSL)
Sélectionnez “MySQL” dans la liste des connecteurs disponibles.
Renseignez les informations de connexion recueillies lors de la configuration de ClickHouse.
Tableau Online inspectera la base de données et affichera la liste des tables disponibles. Faites glisser la table souhaitée vers le canevas à droite. Vous pouvez également cliquer sur “Update Now” pour prévisualiser les données, ainsi qu’affiner les types ou les noms des champs détectés.
Après cela, il ne vous reste plus qu’à cliquer sur “Publish As” en haut à droite, et vous pourrez utiliser normalement dans Tableau Online le jeu de données nouvellement créé. N.B. : si vous souhaitez utiliser Tableau Online avec Tableau Desktop et partager des jeux de données ClickHouse entre les deux, veillez à utiliser également dans Tableau Desktop le connecteur MySQL par défaut, en suivant le guide de configuration affiché ici si vous sélectionnez MySQL dans la liste déroulante source de données. Si vous avez un Mac M1, consultez ce fil de dépannage pour contourner le problème d’installation du pilote.
Connexion de Tableau Online à ClickHouse (configuration Cloud ou sur site avec SSL)
Dans l’UI de configuration de la connexion MySQL, assurez-vous que l’option “SSL” est activée.
Le certificat SSL de ClickHouse Cloud est signé par Let’s Encrypt.
Vous pouvez télécharger ce certificat racine ici.
Choisissez les tables souhaitées comme d’habitude (comme dans Tableau Online), puis sélectionnez “Server” -> “Publish Data Source” -> Tableau Cloud.
IMPORTANT : vous devez sélectionner “Embedded password” dans les options “Authentication”.
En outre, choisissez “Update workbook to use the published data source”.
Enfin, cliquez sur “Publish” et votre source de données avec credentials intégrés s’ouvrira automatiquement dans Tableau Online.
Limitations connues (ClickHouse 23.11)
23.11. Si vous rencontrez d’autres incompatibilités, n’hésitez pas à nous contacter ou à créer un nouveau ticket.