Wdrażanie usługi Azure SQL Edge

Ważne

Usługa Azure SQL Edge nie obsługuje już platformy ARM64.

Azure SQL Edge to aparat relacyjnej bazy danych zoptymalizowany pod kątem wdrożeń usługi IoT i usługi Azure IoT Edge. Zapewnia ona możliwości tworzenia warstwy magazynowania i przetwarzania danych o wysokiej wydajności dla aplikacji i rozwiązań IoT. W tym przewodniku Szybki start pokazano, jak rozpocząć tworzenie modułu usługi Azure SQL Edge za pośrednictwem usługi Azure IoT Edge przy użyciu witryny Azure Portal.

Zanim rozpoczniesz

Uwaga

Aby wdrożyć maszynę wirtualną platformy Azure z systemem Linux jako urządzenie usługi IoT Edge, zobacz ten przewodnik Szybki start.

Wdrażanie modułu SQL Edge z witryny Azure Marketplace

Witryna Azure Marketplace to platforma handlowa aplikacji i usług online, w której można przeglądać szeroką gamę aplikacji i rozwiązań dla przedsiębiorstw, które są certyfikowane i zoptymalizowane pod kątem uruchamiania na platformie Azure, w tym moduły usługi IoT Edge. Usługę Azure SQL Edge można wdrożyć na urządzeniu brzegowym za pośrednictwem witryny Marketplace.

  1. Znajdź moduł Azure SQL Edge w witrynie Azure Marketplace.

    Screenshot of SQL Edge in the Azure Marketplace.

  2. Wybierz plan oprogramowania, który najlepiej odpowiada Twoim wymaganiom, a następnie wybierz pozycję Utwórz.

    Screenshot showing how to pick the correct software plan.

  3. Na stronie Urządzenia docelowe dla modułu usługi IoT Edge określ następujące szczegóły, a następnie wybierz pozycję Utwórz.

    Pole Opis
    Subskrypcja Subskrypcja platformy Azure, w ramach której utworzono usługę IoT Hub
    IoT Hub Nazwa centrum IoT Hub, w którym zarejestrowano urządzenie usługi IoT Edge, a następnie wybierz opcję "Wdróż na urządzeniu"
    Nazwa urządzenia usługi IoT Edge Nazwa urządzenia usługi IoT Edge, na którym zostanie wdrożona usługa SQL Edge
  4. Na stronie Ustawianie modułów na urządzeniu : wybierz moduł Azure SQL Edge w obszarze Moduły usługi IoT Edge. Domyślna nazwa modułu jest ustawiona na AzureSQLEdge.

  5. W sekcji Moduł Ustawienia okienka Aktualizowanie modułu usługi IoT Edge określ żądane wartości nazwy modułu usługi IoT Edge, zasady ponownego uruchamiania i żądany stan.

    Ważne

    Nie zmieniaj ani nie aktualizuj ustawień identyfikatora URI obrazu w module.

  6. W sekcji Zmienne środowiskowe okienka Aktualizowanie modułu usługi IoT Edge określ żądane wartości zmiennych środowiskowych. Aby uzyskać pełną listę zmiennych środowiskowych usługi Azure SQL Edge, zobacz Konfigurowanie przy użyciu zmiennych środowiskowych. Następujące domyślne zmienne środowiskowe są definiowane dla modułu.

    Parametr Opis
    MSSQL_SA_PASSWORD Zmień wartość domyślną, aby określić silne hasło dla konta administratora usługi SQL Edge.
    MSSQL_LCID Zmień wartość domyślną, aby ustawić żądany identyfikator języka, który ma być używany dla usługi SQL Edge. Na przykład 1036 to francuski.
    MSSQL_COLLATION Zmień wartość domyślną, aby ustawić sortowanie domyślne dla przeglądarki SQL Edge. To ustawienie zastępuje domyślne mapowanie identyfikatora języka (LCID) na sortowanie.

    Ważne

    Nie zmieniaj ani nie aktualizuj zmiennej ACCEPT_EULA środowiskowej dla modułu.

  7. W sekcji Opcje tworzenia kontenera w okienku Aktualizowanie modułu usługi IoT Edge zaktualizuj następujące opcje zgodnie z wymaganiami.

    • Port hosta

      Zamapuj określony port hosta na port 1433 (domyślny port SQL) w kontenerze.

    • Powiązania i instalacje

      Jeśli musisz wdrożyć więcej niż jeden moduł usługi SQL Edge, upewnij się, że zaktualizujesz opcję instalacji, aby utworzyć nową parę źródłową i docelową dla woluminu trwałego. Aby uzyskać więcej informacji na temat instalacji i woluminu, zobacz Korzystanie z woluminów w dokumentacji platformy Docker.

    {
        "HostConfig": {
            "CapAdd": [
                "SYS_PTRACE"
            ],
            "Binds": [
                "sqlvolume:/sqlvolume"
            ],
            "PortBindings": {
                "1433/tcp": [
                    {
                        "HostPort": "1433"
                    }
                ]
            },
            "Mounts": [
                {
                    "Type": "volume",
                    "Source": "sqlvolume",
                    "Target": "/var/opt/mssql"
                }
            ]
        },
        "Env": [
            "MSSQL_AGENT_ENABLED=TRUE",
            "ClientTransportType=AMQP_TCP_Only",
            "PlanId=asde-developer-on-iot-edge"
        ]
    }
    

    Ważne

    Nie zmieniaj zmiennej środowiskowej PlanId zdefiniowanej w ustawieniu tworzenia konfiguracji. Jeśli ta wartość zostanie zmieniona, uruchomienie kontenera usługi Azure SQL Edge zakończy się niepowodzeniem.

    Ostrzeżenie

    W przypadku ponownej instalacji modułu pamiętaj, aby najpierw usunąć wszystkie istniejące powiązania. W przeciwnym razie zmienne środowiskowe nie zostaną zaktualizowane.

  8. W okienku Aktualizowanie modułu usługi IoT Edge wybierz pozycję Aktualizuj.

  9. Na stronie Ustawianie modułów na urządzeniu wybierz pozycję Dalej: Trasy>, jeśli chcesz zdefiniować trasy dla wdrożenia. W przeciwnym razie wybierz pozycję Przejrzyj i utwórz. Aby uzyskać więcej informacji na temat konfigurowania tras, zobacz Wdrażanie modułów i ustanawianie tras w usłudze IoT Edge.

  10. Na stronie Ustawianie modułów na urządzeniu wybierz pozycję Utwórz.

Połączenie do usługi Azure SQL Edge

W poniższych krokach użyj narzędzia wiersza polecenia usługi Azure SQL Edge, sqlcmd, wewnątrz kontenera, aby nawiązać połączenie z usługą Azure SQL Edge.

Uwaga

Narzędzia wiersza polecenia programu SQL Server, w tym sqlcmd, nie są dostępne w wersji ARM64 kontenerów usługi Azure SQL Edge.

  1. Użyj polecenia , docker exec -it aby uruchomić interaktywną powłokę bash wewnątrz uruchomionego kontenera. W poniższym przykładzie AzureSQLEdge nazwa jest określana przez Name parametr modułu usługi IoT Edge.

    sudo docker exec -it AzureSQLEdge "bash"
    
  2. Po przejściu do kontenera połącz się lokalnie za pomocą narzędzia sqlcmd . narzędzie sqlcmd nie znajduje się domyślnie w ścieżce, więc musisz określić pełną ścieżkę.

    /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong@Passw0rd>"
    

    Napiwek

    Możesz pominąć hasło w wierszu polecenia, aby wyświetlić monit o jego wprowadzenie.

  3. W przypadku powodzenia należy przejść do wiersza polecenia sqlcmd : 1>.

Tworzenie i wykonywanie zapytań dotyczących danych

W poniższych sekcjach przedstawiono sposób tworzenia nowej bazy danych, dodawania danych i uruchamiania zapytania przy użyciu narzędzia sqlcmd i języka Transact-SQL.

Tworzenie nowej bazy danych

Poniższe kroki umożliwiają utworzenie nowej bazy danych o nazwie TestDB.

  1. W wierszu polecenia sqlcmd wklej następujące polecenie języka Transact-SQL, aby utworzyć testową bazę danych:

    CREATE DATABASE TestDB;
    GO
    
  2. W następnym wierszu napisz zapytanie, aby zwrócić nazwę wszystkich baz danych na serwerze:

    SELECT name from sys.databases;
    GO
    

Wstawianie danych

Następnie utwórz nową tabelę o nazwie Inventoryi wstaw dwa nowe wiersze.

  1. W wierszu polecenia sqlcmd przełącz kontekst do nowej TestDB bazy danych:

    USE TestDB;
    
  2. Utwórz nową tabelę o nazwie Inventory:

    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
  3. Wstaw dane do nowej tabeli:

    INSERT INTO Inventory
    VALUES (1, 'banana', 150);
    
    INSERT INTO Inventory
    VALUES (2, 'orange', 154);
    
  4. Wpisz polecenie GO , aby wykonać poprzednie polecenia:

    GO
    

Wybieranie danych

Teraz uruchom zapytanie, aby zwrócić dane z Inventory tabeli.

  1. W wierszu polecenia sqlcmd wprowadź zapytanie zwracające wiersze z Inventory tabeli, w której ilość jest większa niż 152:

    SELECT * FROM Inventory WHERE quantity > 152;
    
  2. Wykonaj polecenie:

    GO
    

Zamknij wiersz polecenia sqlcmd

  1. Aby zakończyć sesję sqlcmd , wpisz QUIT:

    QUIT
    
  2. Aby zamknąć interakcyjny wiersz polecenia w kontenerze, wpisz exit. Kontener nadal działa po zamknięciu interaktywnej powłoki powłoki bash.

Połączenie spoza kontenera

Możesz nawiązać połączenie i uruchomić zapytania SQL względem wystąpienia usługi Azure SQL Edge z dowolnego zewnętrznego narzędzia systemu Linux, Windows lub macOS, które obsługuje połączenia SQL. Aby uzyskać więcej informacji na temat nawiązywania połączenia z kontenerem usługi SQL Edge z zewnątrz, zobacz Połączenie i Wykonywanie zapytań w usłudze Azure SQL Edge.

W tym przewodniku Szybki start wdrożono moduł usługi SQL Edge na urządzeniu usługi IoT Edge.

Następne kroki