Udostępnij za pośrednictwem


Łączenie wystąpienia usługi Azure Database for MySQL z aplikacją w usłudze Azure Spring Apps

Uwaga

Plany Podstawowa, Standardowa i Enterprise zostaną wycofane od połowy marca 2025 r. z 3-letnim okresem emerytalnym. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu usługi Azure Spring Apps.

Zużycie standardowe i dedykowany plan zostaną wycofane od 30 września 2024 r. z całkowitym zamknięciem po sześciu miesiącach. Zalecamy przejście do usługi Azure Container Apps. Aby uzyskać więcej informacji, zobacz Migrowanie użycia usługi Azure Spring Apps w warstwie Standardowa i dedykowanego planu do usługi Azure Container Apps.

Ten artykuł dotyczy:✅ Java ✅ C#

Ten artykuł dotyczy:✅ Podstawowa/Standardowa ✅ Enterprise

Usługa Azure Spring Apps umożliwia automatyczne łączenie wybranych usług platformy Azure z aplikacjami zamiast ręcznego konfigurowania aplikacji Spring Boot. W tym artykule pokazano, jak połączyć aplikację z wystąpieniem usługi Azure Database for MySQL.

Wymagania wstępne

Przygotowywanie projektu

  1. W pliku pom.xml projektu dodaj następującą zależność:

    <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. W pliku application.properties usuń wszelkie spring.datasource.* właściwości.

  3. Zaktualizuj bieżącą aplikację, uruchamiając az spring app deploypolecenie , lub utwórz nowe wdrożenie dla tej zmiany, uruchamiając polecenie az spring app deployment create.

Łączenie aplikacji z wystąpieniem usługi Azure Database for MySQL

Uwaga

Domyślnie łączniki usługi są tworzone na poziomie aplikacji. Aby zastąpić połączenia, możesz ponownie utworzyć inne połączenia we wdrożeniach.

Wykonaj następujące kroki, aby skonfigurować aplikację Spring w celu nawiązania połączenia z serwerem elastycznym usługi Azure Database for MySQL przy użyciu przypisanej przez system tożsamości zarządzanej.

  1. Użyj następującego polecenia, aby zainstalować rozszerzenie bez hasła łącznika usługi dla interfejsu wiersza polecenia platformy Azure.

    az extension add --name serviceconnector-passwordless --upgrade
    
  2. Następnie użyj następującego polecenia, aby utworzyć tożsamość zarządzaną przypisaną przez użytkownika na potrzeby uwierzytelniania firmy Microsoft Entra. Pamiętaj, aby zastąpić zmienne w przykładzie rzeczywistymi wartościami. Aby uzyskać więcej informacji, zobacz Konfigurowanie uwierzytelniania entra firmy Microsoft dla usługi Azure Database for MySQL — serwer elastyczny.

    export AZ_IDENTITY_RESOURCE_ID=$(az identity create \
        --name $AZURE_USER_IDENTITY_NAME \
        --resource-group $AZURE_IDENTITY_RESOURCE_GROUP \
        --query id \
        --output tsv)
    
  3. az spring connection create Uruchom polecenie, jak pokazano w poniższym przykładzie. Pamiętaj, aby zastąpić zmienne w przykładzie rzeczywistymi wartościami.

    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
    

Następne kroki

W tym artykule przedstawiono sposób łączenia aplikacji w usłudze Azure Spring Apps z wystąpieniem usługi Azure Database for MySQL. Aby dowiedzieć się więcej na temat łączenia usług z aplikacją, zobacz Łączenie bazy danych usługi Azure Cosmos DB z aplikacją w usłudze Azure Spring Apps.