Partage via


Connecter une instance Azure Database pour MySQL à votre application dans Azure Spring Apps

Remarque

Les plans Essentiel, Standardet 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 concernant la mise hors service d’Azure Spring Apps.

La consommation Standard et le plan dédié seront déconseillés à compter du 30 septembre 2024, avec un arrêt complet six mois après. Nous vous recommandons de passer à Azure Container Apps. Pour découvrir plus d’informations, consultez Migrer la consommation Standard et le plan dédié Azure Spring Apps vers Azure Container Apps.

Cet article s’applique à : ✔️ Java ✔️ C#

Cet article s’applique au : Niveau ✔️ De base/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

Préparation du projet

  1. 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>
    
  2. Dans le fichier application.properties, supprimez toutes les propriétés spring.datasource.*.

  3. Mettez à jour l’application actuelle en exécutant az spring app deploy ou créez un déploiement pour ce changement en exécutant az 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.

  1. 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
    
  2. 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)
    
  3. 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.