Implementar borda Azure SQLDeploy Azure SQL Edge
Azure SQL Edge é um motor de base de dados relacional otimizado para implementações IoT e Azure IoT Edge.Azure SQL Edge is a relational database engine optimized for IoT and Azure IoT Edge deployments. Fornece capacidades para criar uma camada de armazenamento e processamento de dados de alto desempenho para aplicações e soluções IoT.It provides capabilities to create a high-performance data storage and processing layer for IoT applications and solutions. Este quickstart mostra-lhe como começar a criar um módulo Azure SQL Edge através do Azure IoT Edge utilizando o portal Azure.This quickstart shows you how to get started with creating an Azure SQL Edge module through Azure IoT Edge using the Azure portal.
Antes de começarBefore you begin
- Se não tiver uma subscrição do Azure, crie uma conta gratuita.If you don't have an Azure subscription, create a free account.
- Inicie sessão no portal do Azure.Sign in to the Azure portal.
- Criar um Hub Azure IoT.Create an Azure IoT Hub.
- Criar um dispositivo Azure IoT Edge.Create an Azure IoT Edge device.
Nota
Para implementar um Azure Linux VM como um dispositivo IoT Edge, consulte este guia de arranque rápido.To deploy an Azure Linux VM as an IoT Edge device, see this quickstart guide.
Implementar módulo sql edge a partir do Azure MarketplaceDeploy SQL Edge Module from Azure Marketplace
O Azure Marketplace é um mercado de aplicações e serviços online onde pode navegar através de uma vasta gama de aplicações e soluções empresariais que são certificadas e otimizadas para funcionar em Azure, incluindo módulos IoT Edge.Azure Marketplace is an online applications and services marketplace where you can browse through a wide range of enterprise applications and solutions that are certified and optimized to run on Azure, including IoT Edge modules. O Azure SQL Edge pode ser implantado num dispositivo de borda através do mercado.Azure SQL Edge can be deployed to an edge device through the marketplace.
Encontre o módulo Azure SQL Edge no Mercado Azure.Find the Azure SQL Edge module on the Azure Marketplace.
Escolha o plano de software que melhor corresponda aos seus requisitos e clique em Criar.Pick the software plan that best matches your requirements and click Create.
Nos dispositivos-alvo para a página do módulo IoT Edge, especifique os seguintes detalhes e, em seguida, clique em CriarOn the Target Devices for IoT Edge Module page, specify the following details and then click Create
CampoField DescriçãoDescription SubscriçãoSubscription A subscrição Azure sob a qual o IoT Hub foi criadoThe Azure subscription under which the IoT Hub was created IoT HubIoT Hub Nome do Hub IoT onde o dispositivo IoT Edge está registado e, em seguida, selecione "Implementar para um dispositivo"Name of the IoT Hub where the IoT Edge device is registered and then select "Deploy to a device" option Nome do dispositivo de borda IoTIoT Edge Device Name Nome do dispositivo IoT Edge onde o SQL Edge seria implantadoName of the IoT Edge device where SQL Edge would be deployed Nos Módulos De Conjunto no dispositivo: página, clique no módulo Azure SQL Edge em módulos IoT Edge.On the Set Modules on device: page, click on the Azure SQL Edge module under IoT Edge Modules. O nome do módulo predefinido é definido para AzureSQLEdge.The default module name is set to AzureSQLEdge.
Na secção de Definições do Módulo da lâmina do módulo de borda IoT, especifique os valores pretendidos para o nome do módulo de borda IoT, política de reinício e estado desejado.On the Module Settings section of the Update IoT Edge Module blade, specify the desired values for the IoT Edge Module Name, Restart Policy and Desired Status.
Importante
Não altere nem atualize as definições de Image URI no módulo.Do not change or update the Image URI settings on the module.
Na secção De Variáveis Ambientais da lâmina do Módulo de Borda IoT de atualização, especifique os valores desejados para as variáveis ambientais.On the Environment Variables section of the Update IoT Edge Module blade, specify the desired values for the environment variables. Para obter uma lista completa de variáveis ambientais Azure SQL Edge consulte Configure usando variáveis ambientais.For a complete list of Azure SQL Edge environment variables refer Configure using environment variables. As seguintes variáveis de ambiente predefinido são definidas para o módulo.The following default environment variables are defined for the module.
ParâmetroParameter DescriçãoDescription MSSQL_SA_PASSWORDMSSQL_SA_PASSWORD Altere o valor predefinido para especificar uma palavra-passe forte para a conta de administração SQL Edge.Change the default value to specify a strong password for the SQL Edge admin account. MSSQL_LCIDMSSQL_LCID Altere o valor predefinido para definir o ID do idioma pretendido para utilizar para SQL Edge.Change the default value to set the desired language ID to use for SQL Edge. Por exemplo, 1036 é francês.For example, 1036 is French. MSSQL_COLLATIONMSSQL_COLLATION Altere o valor predefinido para definir a colagem predefinida para SQL Edge.Change the default value to set the default collation for SQL Edge. Esta definição substitui o mapeamento padrão do ID da linguagem (LCID) à colagem.This setting overrides the default mapping of language ID (LCID) to collation. Importante
Não altere nem atualize a variável ambiente ACCEPT_EULA para o módulo.Do not change or update the ACCEPT_EULA environment variable for the module.
Na secção De Opções de Criação de Recipientes da lâmina do Módulo IoT Edge de atualização, atualize as seguintes opções de acordo com o requisito.On the Container Create Options section of the Update IoT Edge Module blade, update the following options as per requirement.
- Porto anfitrião: Mapear a porta de anfitrião especificada para a porta 1433 (porta SQL padrão) no contentor.Host Port : Map the specified host port to port 1433 (default SQL port) in the container.
- Ligações e suportes : Se precisar de implantar mais de um módulo SQL Edge, certifique-se de que atualiza a opção de montagem para criar uma nova fonte & par de alvos para o volume persistente.Binds and Mounts : If you need to deploy more than one SQL Edge module, ensure that you update the mounts option to create a new source & target pair for the persistent volume. Para obter mais informações sobre suportes e volume, consulte utilize volumes na documentação do estivador.For more information on mounts and volume, refer Use volumes on docker documentation.
{ "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
Não altere a
PlanId
variável de ambiente definida na definição de configuração de criação.Do not change thePlanId
enviroment variable defined in the create config setting. Se este valor for alterado, o recipiente Azure SQL Edge não irá arrancar.If this value is changed, the Azure SQL Edge container will fail to start.No painel do módulo IoT Edge de atualização, clique em Update.On the Update IoT Edge Module pane, click Update.
Nos módulos set na página do dispositivo clique em seguinte: Rotas > se precisar de definir rotas para a sua implantação.On the Set modules on device page click Next: Routes > if you need to define routes for your deployment. Caso contrário, clique em Rever + Criar.Otherwise click Review + Create. Para obter mais informações sobre as rotas de configuração, consulte os módulos de implantação e estabeleça rotas em IoT Edge.For more information on configuring routes, see Deploy modules and establish routes in IoT Edge.
Nos módulos set na página do dispositivo, clique em Criar.On the Set modules on device page, click Create.
Ligue-se à Borda Azure SQLConnect to Azure SQL Edge
Os passos seguintes utilizam a ferramenta de linha de comando Azure SQL Edge, sqlcmd, dentro do recipiente para ligar ao Aresta SQL Azure.The following steps use the Azure SQL Edge command-line tool, sqlcmd, inside the container to connect to Azure SQL Edge.
Nota
As ferramentas da linha sql command (sqlcmd) não estão disponíveis dentro da versão ARM64 dos recipientes Azure SQL Edge.SQL Command line tools (sqlcmd) are not available inside the ARM64 version of Azure SQL Edge containers.
Utilize o
docker exec -it
comando para iniciar uma casca de pancada interativa dentro do seu recipiente de funcionamento.Use thedocker exec -it
command to start an interactive bash shell inside your running container. No exemplo a seguirazuresqledge
encontra-se o nome especificado peloName
parâmetro do seu Módulo de Borda IoT.In the following exampleazuresqledge
is name specified by theName
parameter of your IoT Edge Module.sudo docker exec -it azuresqledge "bash"
Uma vez dentro do recipiente, conecte-se localmente com sqlcmd.Once inside the container, connect locally with sqlcmd. Sqlcmd não está no caminho por defeito, por isso tem que especificar o caminho completo.Sqlcmd is not in the path by default, so you have to specify the full path.
/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong@Passw0rd>"
Dica
Pode omitir a palavra-passe na linha de comando a ser solicitada para a introduzir.You can omit the password on the command-line to be prompted to enter it.
Se for bem sucedido, deverá chegar a um pedido de comando sqlcmd:
1>
.If successful, you should get to a sqlcmd command prompt:1>
.
Criar e consultar dadosCreate and query data
As secções seguintes acompanham-no utilizando sqlcmd e Transact-SQL para criar uma nova base de dados, adicionar dados e executar uma consulta.The following sections walk you through using sqlcmd and Transact-SQL to create a new database, add data, and run a query.
Criar uma nova base de dadosCreate a new database
Os passos seguintes criam uma nova base de dados chamada TestDB
.The following steps create a new database named TestDB
.
A partir da solicitação de comando sqlcmd, cole o seguinte comando Transact-SQL para criar uma base de dados de teste:From the sqlcmd command prompt, paste the following Transact-SQL command to create a test database:
CREATE DATABASE TestDB Go
Na linha seguinte, escreva uma consulta para devolver o nome de todas as bases de dados no seu servidor:On the next line, write a query to return the name of all of the databases on your server:
SELECT Name from sys.Databases Go
Inserir dadosInsert data
Em seguida, crie uma nova Inventory
mesa, e insira duas novas linhas.Next create a new table, Inventory
, and insert two new rows.
A partir do pedido de comando sqlcmd, altere o contexto para a nova
TestDB
base de dados:From the sqlcmd command prompt, switch context to the newTestDB
database:USE TestDB
Criar uma nova tabela chamada
Inventory
:Create new table namedInventory
:CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
Inserir dados na nova tabela:Insert data into the new table:
INSERT INTO Inventory VALUES (1, 'banana', 150); INSERT INTO Inventory VALUES (2, 'orange', 154);
Digite
GO
para executar os comandos anteriores:TypeGO
to execute the previous commands:GO
Selecionar dadosSelect data
Agora, fazer uma consulta para devolver os dados da Inventory
tabela.Now, run a query to return data from the Inventory
table.
A partir do pedido de comando sqlcmd, insira uma consulta que retorna as linhas da
Inventory
tabela onde a quantidade é superior a 152:From the sqlcmd command prompt, enter a query that returns rows from theInventory
table where the quantity is greater than 152:SELECT * FROM Inventory WHERE quantity > 152;
Execute o comando:Execute the command:
GO
Saia da solicitação de comando sqlcmdExit the sqlcmd command prompt
Para terminar a sua sessão de sqlcmd, escreva:
QUIT
To end your sqlcmd session, typeQUIT
:QUIT
Para sair do comando interativo no seu recipiente, escreva
exit
.To exit the interactive command-prompt in your container, typeexit
. O seu contentor continua a funcionar depois de sair da casca de choque interativa.Your container continues to run after you exit the interactive bash shell.
Conecte-se de fora do recipienteConnect from outside the container
Pode ligar e executar consultas SQL contra a sua instância Azure SQL Edge a partir de qualquer ferramenta externa de Linux, Windows ou macOS que suporte ligações SQL.You can connect and run SQL queries against your Azure SQL Edge instance from any external Linux, Windows, or macOS tool that supports SQL connections. Para obter mais informações sobre a ligação a um recipiente SQL Edge a partir do exterior, consulte Connect e Query Azure SQL Edge.For more information on connecting to a SQL Edge container from outside, refer Connect and Query Azure SQL Edge.
Neste arranque rápido, lançou um Módulo SQL Edge num dispositivo IoT Edge.In this quickstart, you deployed a SQL Edge Module on an IoT Edge device.
Passos SeguintesNext Steps
- Machine Learning e Inteligência Artificial com ONNX em SQL EdgeMachine Learning and Artificial Intelligence with ONNX in SQL Edge
- Construção de uma solução de fim para o fim de IoT com borda SQL usando IoT EdgeBuilding an end to end IoT Solution with SQL Edge using IoT Edge
- Streaming de dados em Azure SQL EdgeData Streaming in Azure SQL Edge
- Resolver erros de implementaçãoTroubleshoot deployment errors