Compartilhar via


Pacotes DACPAC e BACPAC do Banco de Dados SQL no Edge

Importante

O SQL do Azure no Edge será desativado em 30 de setembro de 2025. Para obter mais informações e opções de migração, veja o Aviso de aposentadoria.

Observação

O SQL do Azure no Edge encerrou o suporte à plataforma ARM64.

O SQL do Azure no Edge é um mecanismo otimizado de banco de dados relacional projetado para implantações de IoT e borda. Ele foi criado com base nas versões mais recentes do Mecanismo de Banco de Dados do Microsoft SQL, que fornece funcionalidades de desempenho, segurança e processamento de consulta líderes do setor. Juntamente com as funcionalidades de gerenciamento de banco de dados relacional líderes do setor do SQL Server, o SQL do Azure no Edge fornece a funcionalidade de streaming interno para análise em tempo real e processamento de eventos complexos.

O SQL do Azure no Edge fornece mecanismos nativos para implantar um pacote SQL Database DACPAC e BACPAC durante ou após a implantação do SQL Edge.

Os pacotes DACPAC e BACPAC do Banco de Dados SQL podem ser implantados no SQL Edge usando a variável de ambiente MSSQL_PACKAGE. A variável de ambiente pode ser configurada com qualquer um dos itens a seguir.

  • Um local de pasta local dentro do contêiner SQL contendo os arquivos DACPAC e BACPAC. Essa pasta pode ser mapeada para um volume de host usando pontos de montagem ou contêineres de volumes de dados.
  • Um caminho de arquivo local dentro do mapeamento do contêiner SQL para o arquivo DACPAC ou BACPAC. Esse caminho de arquivo pode ser mapeado para um volume de host usando pontos de montagem ou contêineres de volumes de dados.
  • Um caminho de arquivo local dentro do mapeamento do contêiner SQL para um arquivo zip contendo os arquivos DACPAC ou BACPAC. Esse caminho de arquivo pode ser mapeado para um volume de host usando pontos de montagem ou contêineres de volumes de dados.
  • Uma URL do Azure Blob SAS para um arquivo zip contendo os arquivos DACPAC e BACPAC.
  • Uma URL do Azure Blob SAS para um arquivo DACPAC ou BACPAC.

Usar um pacote de DAC do Banco de Dados SQL com o SQL no Edge

Para implantar (ou importar) um pacote DAC do Banco de Dados SQL (*.dacpac) ou um arquivo BACPAC (*.bacpac) usando o armazenamento de Blobs do Azure e um arquivo zip, siga essas etapas.

  1. Crie/extraia um pacote DAC ou exporte um arquivo BACPAC usando um dos seguintes mecanismos.

    Se você estiver usando trabalhos de streaming externos como parte do banco de dados, certifique-se de que:

    • O DACPAC gerado captura todos os objetos do SQL Server correspondentes aos fluxos de entrada/saída e aos trabalhos de streaming, mas os trabalhos não serão iniciados automaticamente. Para que o trabalho de streaming externo seja iniciado automaticamente após a implantação, adicione um script pós-implantação que reinicie os trabalhos da seguinte maneira:

      EXEC `sys.sp_stop_streaming_job` @name = N'<JOB NAME>';
      GO
      EXEC `sys.sp_start_streaming_job` @name = N'<JOB NAME>';
      GO
      
    • Todas as credenciais exigidas pelos trabalhos de streaming externo para acessar fluxos de entrada ou saída são fornecidas como parte do DACPAC.

  2. Compacte o arquivo *.dacpac ou *.bacpac e carregue-o em uma conta do Armazenamento de blobs do Azure. Para obter mais informações sobre como carregar arquivos no armazenamento de blobs do Azure, consulte Carregar, baixar e listar blobs com o portal do Azure.

  3. Gere uma assinatura de acesso compartilhado para o arquivo zip usando o portal do Azure. Para saber mais, consulte Delegar acesso com SAS (Assinaturas de Acesso Compartilhado).

  4. Atualize a configuração do módulo do SQL no Edge para incluir o URI de acesso compartilhado para o pacote de DAC. Para atualizar o módulo do SQL no Edge, siga estas etapas:

    1. No portal do Azure, acesse sua implantação do Hub IoT.
    2. No painel esquerdo, selecione IoT Edge.
    3. Na página do IoT Edge, localize e selecione o IoT Edge em que o módulo SQL no Edge é implantado.
    4. Na página de dispositivos Dispositivo do IoT Edge, selecione Definir Módulo.
    5. Na página Definir módulos, selecione o módulo SQL do Azure no Edge.
    6. No painel Atualizar Módulo do IoT Edge, selecione Variáveis de Ambiente. Adicione a variável de ambiente MSSQL_PACKAGE e especifique a URL SAS gerada na etapa 3 acima como o valor para a variável de ambiente.
    7. Selecione Atualizar.
    8. Na página Definir módulos, selecione Revisar + criar.
    9. Na página Definir módulos, selecione Criar.
  5. Após a atualização do módulo, os arquivos do pacote serão baixados, descompactados e implantados na instância do SQL no Edge.

Em cada reinicialização do contêiner do SQL do Azure no Edge, o SQL no Edge tenta baixar o pacote de arquivo compactado e avaliar as alterações. Se uma nova versão do arquivo DACPAC for encontrada, as alterações serão implantadas no banco de dados no SQL Edge.

Problema conhecido

Durante algumas implantações do DACPAC ou BACPAC, os usuários podem encontrar um tempo limite de comando, resultando na falha da operação de implantação do DACPAC. Se você encontrar esse problema, use o SQLPackage.exe (ou o SQL Client Tools) para aplicar o DACPAC ou o BACPAC manualmente.