Distribuisci SQL Edge di Azure
Importante
SQL Edge di Azure verrà ritirato il 30 settembre 2025. Per altre informazioni e per le opzioni di migrazione, vedere l'avviso di ritiro.
Nota
SQL Edge di Azure non supporta più la piattaforma ARM64.
SQL Edge di Azure è un motore di database relazionale ottimizzato per distribuzioni IoT e Azure IoT Edge. Fornisce funzionalità per la creazione di un livello di elaborazione e archiviazione dei dati a prestazioni elevate per le applicazioni e le soluzioni IoT. Questo argomento di avvio rapido illustra come iniziare a creare un modulo SQL Edge di Azure mediante Azure IoT Edge usando il portale di Azure.
Operazioni preliminari
- Se non hai una sottoscrizione di Azure, crea un account gratuito.
- Accedere al portale di Azure.
- Creare un hub IoT di Azure.
- Creare un dispositivo Azure IoT Edge.
Nota
Per distribuire una macchina virtuale Azure Linux come dispositivo IoT Edge, consultare questa guida introduttiva.
Distribuire il modulo SQL Edge di Azure con l'hub IoT
SQL Edge di Azure può essere distribuito usando le istruzioni fornite da Distribuire moduli dal portale di Azure. L'URI dell'immagine per SQL Edge di Azure è mcr.microsoft.com/azure-sql-edge:latest
.
Nella pagina Aggiungi modulo IoT Edge specificare i valori desiderati per il Nome del modulo IoT Edge, URI immagine, Riavvia criterio e Stato desiderato.
Usare l'URI dell'immagine seguente a seconda dell'edizione da distribuire:
- Edizione Developer -
mcr.microsoft.com/azure-sql-edge/developer
- Edizione Premium -
mcr.microsoft.com/azure-sql-edge/premium
- Edizione Developer -
Nella sezione Variabili di ambiente della pagina Aggiungi modulo IoT Edge specificare i valori desiderati per le variabili di ambiente. Per un elenco completo delle variabili di ambiente di SQL Edge di Azure, vedere Configurare usando le variabili di ambiente.
Parametro Descrizione ACCEPT_EULA Impostare questo valore su Y
per accettare il Contratto di licenza con l'utente finaleMSSQL_SA_PASSWORD Impostare il valore per specificare una password complessa per l'account amministratore di SQL Edge. MSSQL_LCID Impostare il valore per impostare l'ID lingua desiderato da utilizzare per SQL Edge. Ad esempio, 1036 corrisponde al francese. MSSQL_COLLATION Impostare il valore per impostare le regole di confronto predefinite per SQL Edge. Questa impostazione sostituisce il mapping predefinito dell'ID lingua (LCID) per le regole di confronto. Nella sezione Opzioni di creazione del contenitore della pagina Aggiungi modulo IoT Edge, impostare le opzioni in base alle esigenze.
Porta host
Eseguire il mapping della porta host specificata sulla porta 1433 (porta SQL predefinita) nel contenitore.
Associa ed esegue il montaggio
Se è necessario distribuire più di un modulo database SQL Edge, assicurarsi di aggiornare l'opzione eseguire il montaggio per creare una nuova coppia di origine e destinazione per il volume permanente. Per altre informazioni sui montaggi e sul volume, vedere Usare volumi nella documentazione di 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" ] }
Importante
Impostare la variabile di ambiente
PlanId
in base all'edizione installata.- Edizione Developer -
asde-developer-on-iot-edge
- Edizione Premium -
asde-premium-on-iot-edge
Se questo valore è impostato in modo non corretto, l'avvio del contenitore SQL Edge di Azure non può essere avviato.
Avviso
Se si reinstalla il modulo, ricordarsi di rimuovere prima le associazioni esistenti. In caso contrario, le variabili di ambiente non verranno aggiornate.
Nella pagina Aggiungi modulo IoT Edge selezionare Aggiungi.
Nella pagina Imposta moduli nel dispositivo selezionare Avanti: Route > se è necessario definire le route per la distribuzione. In caso in contrario selezionare Rivedi e crea. Per altre informazioni, sulla configurazione delle route, vedere Informazioni su come distribuire moduli e definire route in IoT Edge.
Nella pagina Imposta moduli nel dispositivo selezionare Crea.
Connettersi a SQL Edge di Azure
La procedura seguente usa lo strumento da riga di comando di SQL Edge di Azure, sqlcmd, all'interno del contenitore per stabilire la connessione a SQL Edge di Azure.
Nota
Gli strumenti da riga di comando di SQL Server, inclusi sqlcmd, non sono disponibili all'interno della versione ARM64 dei contenitori di SQL Edge di Azure.
Usare il comando
docker exec -it
per avviare una shell Bash interattiva all'interno del contenitore in esecuzione. Nell'esempio seguente,AzureSQLEdge
è il nome specificato dal parametroName
del modulo IoT Edge.sudo docker exec -it AzureSQLEdge "bash"
Una volta all'interno del contenitore, eseguire la connessione in locale con lo strumento sqlcmd. sqlcmd non è incluso nel percorso per impostazione predefinita, quindi occorre specificare il percorso completo.
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong@Passw0rd>"
Suggerimento
È possibile omettere la password nella riga di comanda perché sia richiesto di essere immessa.
Se la connessione viene eseguita correttamente, il prompt dei comandi sqlcmd sarà:
1>
.
Creare i dati e recuperarli tramite query
Nelle sezioni seguenti viene descritto l'uso di sqlcmd e Transact-SQL per creare un nuovo database, aggiungere dati ed eseguire una query.
Creare un nuovo database
La seguente procedura consente di creare un nuovo database denominato TestDB
.
Dal prompt dei comandi sqlcmd incollare il comando seguente di Transact-SQL per creare un database di test:
CREATE DATABASE TestDB; GO
Nella riga successiva scrivere una query perché vengano restituiti i nomi di tutti database nel server:
SELECT name from sys.databases; GO
Inserire i dati
Creare poi una nuova tabella denominata Inventory
e inserire due nuove righe.
Dal prompt dei comandi sqlcmd spostare il contesto nel nuovo database
TestDB
:USE TestDB;
Creare una nuova tabella denominata
Inventory
:CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
Inserire i dati nella nuova tabella:
INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
Digitare
GO
per eseguire i comandi precedenti:GO
Selezionare i dati
A questo punto, eseguire una query per restituire i dati dalla tabella Inventory
.
Dal prompt dei comandi sqlcmd immettere una query che restituisca le righe dalla tabella
Inventory
che ne contiene oltre 152:SELECT * FROM Inventory WHERE quantity > 152;
Eseguire il comando seguente:
GO
Uscire dal prompt dei comandi sqlcmd
Per terminare la sessione sqlcmd, digitare
QUIT
:QUIT
Per uscire dal prompt dei comandi interattivo nel contenitore, digitare
exit
. Dopo la chiusura della shell Bash interattiva, il contenitore continua l'esecuzione.
Connettersi dall'esterno del contenitore
È possibile connettersi ed eseguire query SQL sull'istanza di SQL Edge di Azure da qualsiasi strumento esterno Linux, Windows o macOS che supporti le connessioni SQL. Per altre informazioni sulla connessione a un contenitore di SQL Edge dall'esterno, vedere Connettersi ed eseguire query in SQL Edge di Azure.
In questo argomento di avvio rapido è stato distribuito un modulo SQL Edge in un dispositivo IoT Edge.