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

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.

  1. Encontre o módulo Azure SQL Edge no Mercado Azure.Find the Azure SQL Edge module on the Azure Marketplace.

    SqL Edge no MarketPlace

  2. 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.

    Escolha o plano de software correto

  3. 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
  4. 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.

  5. 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.

  6. 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.

  7. 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 the PlanId 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.

  8. No painel do módulo IoT Edge de atualização, clique em Update.On the Update IoT Edge Module pane, click Update.

  9. 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.

  10. 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.

  1. Utilize o docker exec -it comando para iniciar uma casca de pancada interativa dentro do seu recipiente de funcionamento.Use the docker exec -it command to start an interactive bash shell inside your running container. No exemplo a seguir azuresqledge encontra-se o nome especificado pelo Name parâmetro do seu Módulo de Borda IoT.In the following example azuresqledge is name specified by the Name parameter of your IoT Edge Module.

    sudo docker exec -it azuresqledge "bash"
    
  2. 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.

  3. 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.

  1. 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
    
  2. 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.

  1. 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 new TestDB database:

    USE TestDB
    
  2. Criar uma nova tabela chamada Inventory :Create new table named Inventory:

    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
  3. 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);
    
  4. Digite GO para executar os comandos anteriores:Type GO 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.

  1. 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 the Inventory table where the quantity is greater than 152:

    SELECT * FROM Inventory WHERE quantity > 152;
    
  2. Execute o comando:Execute the command:

    GO
    

Saia da solicitação de comando sqlcmdExit the sqlcmd command prompt

  1. Para terminar a sua sessão de sqlcmd, escreva: QUITTo end your sqlcmd session, type QUIT:

    QUIT
    
  2. Para sair do comando interativo no seu recipiente, escreva exit .To exit the interactive command-prompt in your container, type exit. 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