Share via


Herstellen einer Verbindung zwischen einer Azure Database for MySQL-Instanz mit Ihrer Anwendung in Azure Spring Apps

Hinweis

Azure Spring Apps ist der neue Name für den Azure Spring Cloud-Dienst. Obwohl der Dienst umbenannt wurde, wird der alte Name noch an einigen Stellen verwendet, solange wir Ressourcen wie Screenshots, Videos und Diagramme aktualisieren.

Dieser Artikel gilt für: ✔️ Java ✔️ C#

Dieser Artikel gilt für: ✔️ Basic/Standard ✔️ Enterprise

Mit Azure Spring Apps können Sie ausgewählte Azure-Dienste automatisch mit Ihren Anwendungen verbinden, anstatt Ihre Spring Boot-Anwendung manuell konfigurieren zu müssen. In diesem Artikel erfahren Sie, wie Sie Ihre Anwendung mit Ihrer Azure-Datenbank für MySQL-Instanz verbinden.

Voraussetzungen

Vorbereiten Ihres Projekts

  1. Fügen Sie der Datei pom.xml Ihres Projekts die folgende Abhängigkeit hinzu:

    <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. Entfernen Sie in der Datei application.properties alle spring.datasource.*-Eigenschaften.

  3. Aktualisieren Sie die aktuelle App durch Ausführen von az spring app deploy, oder erstellen Sie eine neue Bereitstellung für diese Änderung, indem Sie az spring app deployment create ausführen.

Verbinden Ihrer App in die Azure-Datenbank für MySQL-Instanz

Hinweis

Standardmäßig werden Dienst-Verbinden oren auf Anwendungsebene erstellt. Um die Verbindungen außer Kraft zu setzen, können Sie in den Bereitstellungen wieder andere Verbindungen erstellen.

Führen Sie die folgenden Schritte aus, um Ihre Spring-App so zu konfigurieren, dass eine Verbindung mit einer Azure-Datenbank für MySQL Flexible Server mit einer vom System zugewiesenen verwalteten Identität hergestellt wird.

  1. Verwenden Sie den folgenden Befehl, um die Dienst-Verbinden or kennwortlose Erweiterung für die Azure CLI zu installieren.

    az extension add --name serviceconnector-passwordless --upgrade
    
  2. Verwenden Sie dann den folgenden Befehl, um eine benutzerseitig zugewiesene verwaltete Identität für die Microsoft Entra-Authentifizierung zu erstellen. Achten Sie darauf, die Variablen im Beispiel durch tatsächliche Werte zu ersetzen. Weitere Informationen finden Sie unter Einrichten der Microsoft Entra-Authentifizierung für Azure Database for MySQL – Flexibler Server.

    export AZ_IDENTITY_RESOURCE_ID=$(az identity create \
        --name $AZURE_USER_IDENTITY_NAME \
        --resource-group $AZURE_IDENTITY_RESOURCE_GROUP \
        --query id \
        --output tsv)
    
  3. Führen Sie den az spring connection create Befehl aus, wie im folgenden Beispiel gezeigt. Achten Sie darauf, die Variablen im Beispiel durch tatsächliche Werte zu ersetzen.

    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
    

Nächste Schritte

In diesem Artikel haben Sie erfahren, wie Sie eine Anwendung in Azure Spring Apps mit einer Azure-Datenbank für MySQL-Instanz verbinden. Weitere Informationen zum Verbinden von Diensten mit einer Anwendung finden Sie unter Verbinden einer Azure Cosmos DB-Datenbank mit einer Anwendung in Azure Spring Apps.