Szybki start: integracja usługi Azure Spring Apps z usługą Azure Database for MySQL

Uwaga

Azure Spring Apps to nowa nazwa usługi Azure Spring Cloud. Mimo że usługa ma nową nazwę, stara nazwa będzie widoczna w niektórych miejscach przez pewien czas, ponieważ pracujemy nad aktualizowaniem zasobów, takich jak zrzuty ekranu, filmy wideo i diagramy.

Ten artykuł dotyczy: ✔️ Podstawowa/Standardowa ❌ Enterprise

Pet Clinic, jak wdrożono w domyślnej konfiguracji Szybki start: kompilowanie i wdrażanie aplikacji w usłudze Azure Spring Apps, używa bazy danych w pamięci (HSQLDB), która jest wypełniana danymi podczas uruchamiania. W tym przewodniku Szybki start wyjaśniono, jak aprowizować i przygotować wystąpienie usługi Azure Database for MySQL, a następnie skonfigurować aplikację Pet Clinic w usłudze Azure Spring Apps, aby używać jej jako trwałej bazy danych.

Wymagania wstępne

Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.

Tworzenie wystąpienia usługi Azure Database for MySQL

Utwórz serwer elastyczny usługi Azure Database for MySQL przy użyciu polecenia az mysql flexible-server create . Zastąp symbole <database-name>zastępcze , , <resource-group-name><MySQL-flexible-server-name>, <admin-username>i <admin-password> nazwą nowej bazy danych, nazwą grupy zasobów, nazwą nowego serwera oraz nazwą użytkownika i hasłem administratora. Użyj cudzysłowów pojedynczych wokół wartości .admin-password

az mysql flexible-server create \
    --resource-group <resource-group-name> \
    --name <MySQL-flexible-server-name> \
    --database-name <database-name> \
    --public-access 0.0.0.0 \
    --admin-user <admin-username> \
    --admin-password '<admin-password>'

Uwaga

Jednostka Standard_B1ms SKU jest używana domyślnie. Aby uzyskać szczegółowe informacje o cenach, zobacz Cennik usługi Azure Database for MySQL.

Napiwek

Hasło powinno mieć długość co najmniej ośmiu znaków i zawierać co najmniej jedną wielką literę w języku angielskim, jedną małą literę, jedną cyfrę i jeden znak inny niż alfanumeryczny (!, $, #, %itd.).

Połączenie aplikacji do bazy danych MySQL

Użyj usługi Połączenie or, aby połączyć aplikację hostowaną w usłudze Azure Spring Apps z bazą danych MySQL.

Uwaga

Funkcja powiązania usługi w usłudze Azure Spring Apps jest przestarzała na rzecz usługi Połączenie or.

  1. Jeśli używasz Połączenie usługi po raz pierwszy, uruchom polecenie az provider register, aby zarejestrować dostawcę zasobów usługi Połączenie or.

    az provider register --namespace Microsoft.ServiceLinker
    
  2. Uruchom polecenie , az spring connection create aby utworzyć połączenie usługi między customers-service aplikacją a bazą danych Azure MySQL. Zastąp symbole zastępcze dla następujących ustawień własnymi informacjami. Użyj pojedynczych cudzysłowów wokół wartości dla serwera secretMySQL .

    Ustawienie opis
    --connection Nazwa połączenia identyfikującego połączenie między aplikacją a usługą docelową.
    --resource-group Nazwa grupy zasobów, która zawiera aplikację hostowaną przez usługę Azure Spring Apps.
    --service Nazwa zasobu usługi Azure Spring Apps.
    --app Nazwa aplikacji hostowanej przez usługę Azure Spring Apps, która łączy się z usługą docelową.
    --target-resource-group Nazwa grupy zasobów z kontem magazynu.
    --server Serwer MySQL, z którym chcesz nawiązać połączenie
    --database Nazwa utworzonej wcześniej bazy danych.
    --secret name= secret= Nazwa użytkownika i hasło serwera MySQL.
    az spring connection create mysql-flexible \
        --resource-group <Azure-Spring-Apps-resource-group-name> \
        --service <Azure-Spring-Apps-resource-name> \
        --app customers-service \
        --connection <mysql-connection-name-for-app> \
        --target-resource-group <mySQL-server-resource-group> \
        --server <server-name> \
        --database <database-name> \
        --secret name=<username> secret='<secret>'
    

    Napiwek

    az spring Jeśli polecenie nie jest rozpoznawane przez system, sprawdź, czy zainstalowano rozszerzenie Azure Spring Apps, uruchamiając polecenie az extension add --name spring.

Powtórz te kroki, aby utworzyć połączenia dla customers-serviceaplikacji , vets-servicei visits-service .

Sprawdzanie połączenia z bazą danych MySQL

Uruchom polecenie , az spring connection validate aby wyświetlić stan połączenia między customers-service aplikacją a bazą danych Azure MySQL. Zastąp symbole zastępcze własnymi informacjami.

az spring connection validate \
    --resource-group <Azure-Spring-Apps-resource-group-name> \
    --service <Azure-Spring-Apps-resource-name> \
    --app customers-service \
    --connection <mysql-connection-name-for-app> \
    --output table

Zostaną wyświetlone następujące dane wyjściowe:

Name                                  Result    Description
------------------------------------  --------  -------------
Target resource existence validated.  success
Target service firewall validated.    success
Username and password validated.      success

Napiwek

Aby uzyskać więcej szczegółowych informacji na temat połączenia między usługami, usuń --output table je z powyższego polecenia.

Powtórz te instrukcje, aby zweryfikować połączenia dla customers-serviceaplikacji , vets-servicei visits-service .

Aktualizowanie aplikacji w celu korzystania z profilu MySQL

W poniższej sekcji wyjaśniono, jak zaktualizować aplikacje w celu nawiązania połączenia z bazą danych MySQL.

Użyj następującego polecenia, aby ustawić zmienną środowiskową, aby aktywować mysql profil aplikacji customers-service :

az spring app update \
    --resource-group <Azure-Spring-Apps-resource-group-name> \
    --service <Azure-Spring-Apps-resource-name> \
    --name customers-service \
    --env SPRING_PROFILES_ACTIVE=mysql

Powtórz te instrukcje, aby zaktualizować konfigurację aplikacji dla customers-serviceaplikacji , vets-servicei visits-service .

Weryfikowanie aplikacji

Aby zweryfikować usługę Pet Clinic i wysyłać zapytania o rekordy z bazy danych MySQL w celu potwierdzenia połączenia z bazą danych, postępuj zgodnie z instrukcjami w sekcji Weryfikowanie usług w przewodniku Szybki start: kompilowanie i wdrażanie aplikacji w usłudze Azure Spring Apps.

Czyszczenie zasobów

Jeśli planujesz kontynuować pracę z kolejnymi przewodnikami Szybki start i samouczkami, możesz pozostawić te zasoby na miejscu. Gdy grupa zasobów nie będzie już potrzebna, usuń grupę zasobów przy użyciu polecenia az group delete , które usuwa zasoby w grupie zasobów. Zastąp <resource-group> ciąg nazwą grupy zasobów.

az group delete --name <resource-group>

Następne kroki