Share via


Conexión de una instancia de Azure Database for MySQL a la aplicación en Azure Spring Apps

Nota:

Azure Spring Apps es el nuevo nombre del servicio Azure Spring Cloud. Aunque el servicio tiene un nuevo nombre, verá el nombre antiguo en algunos lugares durante un tiempo mientras trabajamos para actualizar recursos, como capturas de pantalla, vídeos y diagramas.

Este artículo se aplica a: ✔️ Java ✔️ C#

La información de este artículo puede ponerse en práctica en: ✔️ Básico o Estándar ✔️ Enterprise

Con Azure Spring Apps, puede conectar automáticamente los servicios de Azure seleccionados a las aplicaciones, en lugar de tener que configurar la aplicación de Spring Boot manualmente. En este artículo se muestra cómo conectar la aplicación a la instancia de Azure Database for MySQL.

Requisitos previos

Preparación del proyecto

  1. En el archivo pom.xml del proyecto, agregue la siguiente dependencia:

    <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. En el archivo application.properties, quite todas las propiedades de spring.datasource.*.

  3. Actualice la aplicación actual mediante la ejecución de az spring app deploy o cree una implementación para este cambio mediante la ejecución de az spring app deployment create.

Conectar la aplicación a la instancia de Azure Database for MySQL

Nota:

De forma predeterminada, los Conectar ors de servicio se crean en el nivel de aplicación. Para invalidar las conexiones, puede volver a crear otras conexiones en las implementaciones.

Siga estos pasos para configurar la aplicación spring para conectarse a un servidor flexible de Azure Database for MySQL con una identidad administrada asignada por el sistema.

  1. Use el comando siguiente para instalar la extensión sin contraseña de Service Conectar or para la CLI de Azure.

    az extension add --name serviceconnector-passwordless --upgrade
    
  2. A continuación, use el siguiente comando para crear una identidad administrada asignada por el usuario para la autenticación de Microsoft Entra. Asegúrese de reemplazar las variables del ejemplo por valores reales. Para obtener más información, consulte Configuración de la autenticación de Microsoft Entra para Azure Database for MySQL: servidor 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. Ejecute el az spring connection create comando , como se muestra en el ejemplo siguiente. Asegúrese de reemplazar las variables del ejemplo por valores reales.

    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
    

Pasos siguientes

En este artículo, ha aprendido a conectar una aplicación de Azure Spring Apps a una instancia de Azure Database for MySQL. Para más información sobre cómo conectar servicios a una aplicación, consulte Conectar una base de datos de Azure Cosmos DB a una aplicación en Azure Spring Apps.