Utiliser MySQL sur Azure en mode PaaS
Salut !
Savais-tu qu’Azure te permet maintenant de créer et de gérer un serveur MySQL en mode PaaS ?
Ce service, « Azure Database for MySQL server » de son petit nom, est encore en preview, mais ça vaut tout de même la peine de l’explorer.
Pourquoi un serveur MySQL sur Azure ?
Pour plusieurs raisons, notamment :
- Tu as créé une application que tu héberges sur Azure et cette dernière a besoin d’une BD MySQL;
- Tu as installé une application ou un logiciel dans une VM sur Azure et ce dernier nécessite une BD MySQL;
- Tu as créé un blog avec le moteur WordPress sachant que celui-ci requiert une BD MySQL (je t’invite à lire mon article sur le sujet, à venir bientôt).
Créer un serveur (et une BD) MySQL en mode PaaS sur Azure
Connecte-toi à ton portail Azure, puis va dans « New », tapes « mysql » dans la barre de recherche et sélectionne « Azure Database for MySQL server » dans la liste qui apparait.
À l’écran suivant, cliques sur le bouton « Create ». Tu arriveras alors à l’écran de saisie des informations sur le serveur et la BD à créer :
Rien de bien sorcier ici.
Le seul point que je porterai à ton attention est au sujet du pricing tier. Ce qui a d’intéressant, c’est qu’au fur et à mesure que tu modifie ton choix, Azure te donne un estimé du coût mensuel.
Autoriser ton adresse IP à accéder au serveur MySQL sur Azure
Par défaut, ton nouveau serveur n’est accessible qu’aux services Azure. Ce qui veut dire que si tu tentes de t’y connecter depuis une application ou un logiciel (voir la prochaine section), cela se soldera par un échec.
Pour autoriser ton adresse IP locale, sélectionnes ton serveur MySQL, va dans « Connection security » (1), puis cliques sur le bouton « Add my IP » (2). Tu verras ton adresse IP locale s’ajouter à la liste des adresses IP autorisées. Confirme le tout en cliquant sur « Save » (3).
NOTE : Tu peux ajouter une plage d’adresses IP en spécifiant des valeurs différentes dans les champs « Start IP » et « End IP ».
Se connecter à ta BD via MySQL Workbench
Nous allons voir comment nous connecter à la BD MySQL que nous venons de créer depuis MySQL Workbench sur macOS, mais les mêmes étapes restent valables sous Windows et sous Linux.
Pour télécharger MySQL Workbench, rends-toi sur : https://dev.mysql.com/downloads/workbench/ et choisi ton système d’exploitation.
Lances MySQL Workbench et entres les informations suivantes dans l’écran « setup new connection » :
- Donne un nom siginificatif à ta connexion (cela t’aidera à l’identifier plus facilement par la suite)
- Méthode de connexion : indiques « Standard TCP/IP »
- Hostname : tu dois indiquer le nom de ton serveur sous la forme suivante « {nom du serveur}.mysql.database.azure.com ».
- Laisse le port à 3306
- Username : tu dois l’indiquer sous la forme suivante « {nom d’utilisateur}@{nom du serveur} »
- Password : cliques sur le bouton « Store in keychain… », il t’affichera un écran pour saisir le mot de passe
- Default Schema : laisse ce champ vide
Tu es à présent connecté à ton serveur MySQL sur Azure. Tu peux à présent l’utiliser de la même manière que s’il était en local sur ta machine !
Obtenir la connection string vers ma BD MySQL pour l’ajouter à mon application
Dépendamment du type d’application que tu développes, le format de la connection string va varier.
Fort heureusement, Azure te proposes toutes formes. Pour les trouver :
Localise ton serveur MySQL, puis va dans « Connection strings ». Parcours la liste et copie celle qui te convient. Tu devras toutefois remplacer les champs « {your_database} » et « {your_password} » par les valeurs que tu as indiqué lors de la création de ton serveur.
Petite remarque : Si tu comptes héberger ton application dans une Web App, utilises la connection string sous « Web App » tout en bas de la liste.
En conclusion…
Ce nouveau service « Azure Database for MySQL server » est très intéressant et très pratique si tu as besoin d’une BD MySQL et que tu ne veux pas avoir à gérer le serveur MySQL (installation, mises à jour de l’OS et du serveur, etc.).
Une petite lacune toutefois…
Il n’y a, au moment de la rédaction de cet article, pas de « Data explorer » de disponible, mais je suis sûr que cela va arriver prochainement. N’oublions pas que le service est encore en preview.
À la prochaine !