Connecter une instance Azure Database pour MySQL à votre application dans Azure Spring Apps
Remarque
Les plans Essentiel, Standard et Entreprise seront déconseillés à compter de la mi-mars 2025, avec une période de mise hors service de 3 ans. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez l’annonce de mise hors service d’Azure Spring Apps.
Le plan de consommation standard et dédiée sera déconseillé à compter du 30 septembre 2024, avec un arrêt complet après six mois. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez Migrer le plan de consommation standard et dédiée Azure Spring Apps vers Azure Container Apps.
Cet article s’applique à :✅ Java ✅ C#
Cet article s’applique à :✅ Essentiel/Standard ✅ Entreprise
Azure Spring Apps vous permet de connecter automatiquement les services Azure sélectionnés à vos applications au lieu de devoir configurer manuellement votre application Spring Boot. Cet article vous montre comment connecter votre application à votre instance Azure Database pour MySQL.
Prérequis
- Une application déployée dans Azure Spring Apps. Pour plus d’informations, consultez Démarrage rapide : Déployer votre première application sur Azure Spring Apps.
- Une instance de Serveur flexible Azure Database pour MySQL.
- Azure CLI version 2.45.0 ou ultérieure.
Préparation du projet
Dans le fichier pom.xml de votre projet, ajoutez la dépendance suivante :
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>com.azure.spring</groupId> <artifactId>spring-cloud-azure-starter-jdbc-mysql</artifactId> </dependency>
Dans le fichier application.properties, supprimez toutes les propriétés
spring.datasource.*
.Mettez à jour l’application actuelle en exécutant
az spring app deploy
ou créez un déploiement pour ce changement en exécutantaz spring app deployment create
.
Connecter l’application à l’instance Azure Database pour MySQL
Remarque
Par défaut, les connecteurs de service sont créés au niveau de l’application. Pour remplacer les connexions, vous pouvez créer à nouveau d’autres connexions dans les déploiements.
Suivez ces étapes pour configurer votre application Spring afin de vous connecter à Azure Database pour MySQL Serveur flexible avec une identité managée affectée par le système.
Utilisez la commande suivante pour installer l’extension sans mot de passe de connecteur de services pour Azure CLI.
az extension add --name serviceconnector-passwordless --upgrade
Ensuite, utilisez la commande suivante pour créer une identité managée affectée par l’utilisateur pour l’authentification Microsoft Entra. Veillez à remplacer les variables de l’exemple par des valeurs. Pour plus d’informations, consultez Configurer l’authentification Microsoft Entra pour Azure Database pour MySQL : Serveur flexible.
export AZ_IDENTITY_RESOURCE_ID=$(az identity create \ --name $AZURE_USER_IDENTITY_NAME \ --resource-group $AZURE_IDENTITY_RESOURCE_GROUP \ --query id \ --output tsv)
Exécutez la commande
az spring connection create
, comme dans l’exemple suivant. Veillez à remplacer les variables de l’exemple par des valeurs.az spring connection create mysql-flexible \ --resource-group $AZURE_SPRING_APPS_RESOURCE_GROUP \ --service $AZURE_SPRING_APPS_SERVICE_INSTANCE_NAME \ --app $APP_NAME \ --target-resource-group $MYSQL_RESOURCE_GROUP \ --server $MYSQL_SERVER_NAME \ --database $DATABASE_NAME \ --system-identity mysql-identity-id=$AZ_IDENTITY_RESOURCE_ID
Étapes suivantes
Dans cet article, vous avez appris à connecter une application dans Azure Spring Apps à une instance Azure Database pour MySQL. Pour en savoir plus sur la connexion de services à une application, consultez Connecter une base de données Azure Cosmos DB à une application dans Azure Spring Apps.