Comment connecter PowerBI à une base MySQL via tunnel SSH : Guide complet

Image de couverture de l'article Comment connecter PowerBI à une base MySQL via tunnel SSH : Guide complet

Colas Mérand

21/05/2025

PowerBI

MySQL

Tunnel SSH

5 minutes

Comment connecter PowerBI à une base MySQL via tunnel SSH : Guide complet

Dans un monde où la data est devenue le nerf de la guerre pour les entreprises, l'accès sécurisé aux bases de données distantes représente un enjeu majeur. Parmi les défis techniques les plus fréquents figure la connexion entre des outils d'analyse comme PowerBI et des bases de données MySQL situées sur des serveurs distants, accessibles uniquement via SSH. Cet article vous guide pas à pas dans cette configuration technique, en partageant notre expertise acquise au fil de nombreux projets.

Pourquoi utiliser un tunnel SSH pour connecter PowerBI à MySQL ?

Avant d'entrer dans les détails techniques, il est important de comprendre pourquoi cette configuration est souvent nécessaire :

  1. Sécurité renforcée : Les bases de données contiennent souvent des informations sensibles. Un tunnel SSH offre une couche de chiffrement supplémentaire.
  2. Accès aux environnements restreints : De nombreuses infrastructures d'entreprise n'exposent pas directement leurs bases de données sur internet.
  3. Conformité aux politiques de sécurité : Les normes comme RGPD, ISO 27001 ou PCI DSS imposent souvent des contraintes d'accès aux données.

Prérequis pour la mise en place

Pour réussir cette configuration, vous aurez besoin de :

  • PowerBI Desktop installé sur votre poste
  • Un client SSH (comme PuTTY sur Windows)
  • Les identifiants de connexion SSH au serveur distant
  • Les identifiants de la base MySQL et son adresse IP interne
  • Les droits d'administration sur votre poste de travail

Configuration étape par étape

1. Établir le tunnel SSH

La première étape consiste à créer un tunnel SSH qui redirigera le trafic local vers la base MySQL distante.

ssh -L 3306:adresse_ip_mysql_distante:3306 utilisateur@serveur_ssh

Cette commande crée un tunnel qui relie le port 3306 de votre machine locale (port standard MySQL) au port 3306 de la machine distante hébergeant MySQL, en passant par le serveur SSH.

2. Configuration de PowerBI

Une fois le tunnel établi, vous pouvez configurer PowerBI comme si vous vous connectiez à une base MySQL locale :

  1. Ouvrez PowerBI Desktop
  2. Cliquez sur "Obtenir les données" > "Base de données" > "MySQL"
  3. Dans le champ serveur, entrez localhost ou 127.0.0.1
  4. Entrez le nom de la base de données
  5. Choisissez le mode de connexion (généralement "Importer")
  6. Entrez vos identifiants MySQL

3. Résolution des problèmes courants

Problème de connexion refusée

Si vous rencontrez une erreur de connexion refusée, vérifiez que :

  • Le tunnel SSH est bien actif
  • Les identifiants MySQL sont corrects
  • Le pare-feu de votre machine n'interfère pas avec la connexion

Performances lentes

Si les requêtes sont anormalement lentes :

  • Optimisez vos requêtes SQL
  • Envisagez d'utiliser le mode DirectQuery avec parcimonie
  • Créez des vues pré-agrégées côté MySQL pour accélérer les requêtes fréquentes

Automatisation du processus

Pour les utilisateurs avancés ou les déploiements en entreprise, l'automatisation de cette connexion peut s'avérer précieuse. Chez Platane, nous avons développé plusieurs solutions pour nos clients, notamment :

  • Des scripts PowerShell qui établissent automatiquement le tunnel SSH au démarrage
  • Des applications légères qui gèrent la persistance du tunnel
  • Des configurations Docker qui encapsulent l'ensemble du processus

Lors d'un récent projet pour Dealt, nous avons mis en place une infrastructure complète permettant aux analystes d'accéder aux données de leur marketplace sans compromettre la sécurité. Cette solution a permis de réduire le temps d'accès aux données de plusieurs heures à quelques minutes.

Bonnes pratiques de sécurité

La connexion à des bases de données distantes implique des considérations de sécurité importantes :

  1. Utilisez des clés SSH plutôt que des mots de passe pour l'authentification
  2. Limitez les privilèges MySQL à ce qui est strictement nécessaire pour l'analyse
  3. Évitez de stocker les identifiants dans les fichiers de configuration PowerBI partagés
  4. Mettez en place une rotation régulière des mots de passe
  5. Auditez régulièrement les accès à votre base de données

Alternatives et solutions complémentaires

Si cette configuration présente des limitations pour votre cas d'usage, plusieurs alternatives existent :

  • VPN d'entreprise : Une solution plus globale pour accéder à l'ensemble des ressources internes
  • API dédiée : Développement d'une API sécurisée qui expose uniquement les données nécessaires
  • Réplication de données : Mise en place d'une réplication vers une base accessible plus directement

Pour le projet Epictory, nous avons par exemple développé une architecture hybride où certaines données étaient accessibles via API et d'autres via tunnel SSH, optimisant ainsi à la fois la sécurité et les performances.

Intégration avec d'autres outils d'analyse

Cette approche ne se limite pas à PowerBI. Les mêmes principes s'appliquent à d'autres outils comme :

  • Tableau
  • QlikView
  • Looker
  • Metabase

Chacun avec ses spécificités que nous maîtrisons chez Platane.

Conclusion

La connexion de PowerBI à une base MySQL via tunnel SSH représente un excellent compromis entre sécurité et accessibilité des données. Bien que techniquement plus complexe qu'une connexion directe, cette approche offre des garanties essentielles pour les environnements professionnels.

Chez Platane, nous accompagnons régulièrement nos clients dans la mise en place de ces architectures sécurisées, en les adaptant précisément à leurs besoins spécifiques. Notre expertise en développement de solutions sur mesure nous permet d'aller au-delà des configurations standard pour créer des environnements d'analyse de données à la fois puissants et sécurisés.

Vous avez un projet similaire ou des questions sur l'optimisation de votre infrastructure d'analyse de données ? N'hésitez pas à prendre rendez-vous via notre formulaire de contact. Notre équipe d'experts se fera un plaisir d'échanger avec vous sur vos besoins spécifiques et de vous proposer des solutions adaptées qui allient technologie de pointe et créativité, le tout au service de vos objectifs business.

Le BlogDes infos, des actus, du fun !
Image de couverture de l'article de blog

Prestashop en 2024 : Comment maximiser les performances de votre boutique e-commerce

Découvrez comment optimiser votre boutique Prestashop pour améliorer ses performances, sa personnalisation et son évolutivité grâce à l'expertise d'une agence web spécialisée.
lire l’article
Image de couverture de l'article de blog

Comment sauver votre référencement Prestashop : stratégies avancées pour inverser une chute de positionnement

Découvrez comment diagnostiquer et résoudre les problèmes de référencement sur Prestashop 1.7, avec des stratégies concrètes pour retrouver votre visibilité et vos performances commerciales.
lire l’article
Image de couverture de l'article de blog

De Figma à WordPress : Comment garantir une intégration pixel perfect pour votre site web

Découvrez les meilleures pratiques pour assurer une intégration fidèle de vos maquettes Figma vers WordPress, en garantissant une expérience cohérente sur tous les appareils et dans toutes les langues.
lire l’article
Nous contacterOui allo ?
Nous appeler
Une question, un besoin de renseignements ?
N'hésitez pas à nous contacter.
Nous envoyer un message
facultatif
Prendre rendez-vous
Vous préférez discuter de vive voix ?
Nous aussi et c'est évidemment sans engagement !
logo de Platane.io
5 Rue Robert Rême - 35000, Rennes
69 rue des Tourterelles - 86000, Saint-Benoit
06 81 50 37 23
Retrouvez-nous sur