Compartir a través de


Paquetes DACPAC y BACPAC de SQL Database en SQL Edge

Importante

Azure SQL Edge se retirará el 30 de septiembre de 2025. Para obtener más información y opciones de migración, consulte el aviso de retirada.

Nota:

Azure SQL Edge ya no admite la plataforma ARM64.

Azure SQL Edge es un motor de base de datos relacional optimizado orientado a implementaciones de IoT y Edge. Se basa en las versiones más recientes del motor de base de datos de Microsoft SQL Database, que proporciona funcionalidades de rendimiento, seguridad y procesamiento de consultas líderes en el sector. Junto con las capacidades de administración de bases de datos relacionales líderes del sector de SQL Server, Azure SQL Edge proporciona funcionalidad de streaming integrada para el análisis en tiempo real y el procesamiento de eventos complejos.

Azure SQL Edge proporciona mecanismos nativos para implementar un paquete DACPAC y BACPAC de SQL Database durante o después de implementar SQL Edge.

Los paquetes DACPAC y BACPAC de SQL Database se pueden implementar en SQL Edge mediante la variable de entorno MSSQL_PACKAGE. La variable de entorno se puede configurar con cualquiera de las opciones siguientes.

  • Una ubicación de carpeta local dentro del contenedor de SQL que contiene los archivos DACPAC y BACPAC. Esta carpeta se puede asignar a un volumen de host mediante puntos de montaje o contenedores de volúmenes de datos.
  • Una ruta de acceso de archivo local dentro de la asignación del contenedor SQL al archivo DACPAC o BACPAC. Esta ruta de acceso de archivo se puede asignar a un volumen de host mediante puntos de montaje o contenedores de volúmenes de datos.
  • Una ruta de acceso de archivo local dentro de la asignación del contenedor SQL a un archivo ZIP que contiene archivos DACPAC o BACPAC. Esta ruta de acceso de archivo se puede asignar a un volumen de host mediante puntos de montaje o contenedores de volúmenes de datos.
  • Una dirección URL de SAS de blob de Azure a un archivo ZIP que contiene los archivos DACPAC y BACPAC.
  • Una dirección URL de SAS de blob de Azure a un archivo DACPAC o BACPAC.

Uso de un paquete DAC de SQL Database con SQL Edge

Para implementar (o importar) un paquete DAC de SQL Database (*.dacpac) o un archivo BACPAC (*.bacpac) con Azure Blob Storage y un archivo ZIP, siga estos pasos.

  1. Cree o extraiga un paquete DAC o exporte un archivo BACPAC mediante uno de los siguientes mecanismos.

    Si usa trabajos de streaming externos como parte de la base de datos, asegúrese de que:

    • El DACPAC generado captura todos los objetos de SQL Server correspondientes a las entradas y flujos de salida y los trabajos de streaming, pero los trabajos no se iniciarán automáticamente. Para que el trabajo de streaming externo se inicie automáticamente después de la implementación, agregue un script posterior a la implementación que reinicie los trabajos de la siguiente manera:

      EXEC `sys.sp_stop_streaming_job` @name = N'<JOB NAME>';
      GO
      EXEC `sys.sp_start_streaming_job` @name = N'<JOB NAME>';
      GO
      
    • Las credenciales requeridas por los trabajos de streaming externos para acceder a flujos de entrada o salida se proporcionan como parte del DACPAC.

  2. Comprima el archivo *.dacpac o *.bacpac, y cárguelo en una cuenta de Azure Blob Storage. Para más información sobre la carga de archivos en Azure Blob Storage, consulte Carga, descarga y enumeración de blobs con Azure Portal.

  3. Genere una firma de acceso compartido para el archivo ZIP mediante Azure Portal. Para más información, consulte Delegación de acceso con firmas de acceso compartidas (SAS).

  4. Actualice la configuración del módulo SQL Edge para incluir el URI de acceso compartido para el paquete DAC. Para actualizar el módulo SQL Edge, realice estos pasos:

    1. En Azure Portal, vaya a la implementación de IoT Hub.
    2. En el panel izquierdo, seleccione IoT Edge.
    3. En la página de IoT Edge, busque y seleccione la instancia de IoT Edge en la que se implementa el módulo de SQL Edge.
    4. En la página de Dispositivo de IoT Edge, seleccione Establecer módulo.
    5. En la página Establecer módulos, seleccione el módulo Azure SQL Edge.
    6. En el panel Actualizar módulo IoT Edge, seleccione Variables de entorno. Agregue la variable de entorno MSSQL_PACKAGE y especifique la dirección URL de SAS generada en el paso 3 anterior como el valor de la variable de entorno.
    7. Seleccione Actualizar.
    8. En la página Establecer módulos, seleccione Revisar y crear.
    9. En la página Establecer módulos, seleccione Crear.
  5. Después de actualizar el módulo, los archivos de paquete se descargan, se descomprimen y se implementan en la instancia de SQL Edge.

En cada reinicio del contenedor de Azure SQL Edge, SQL Edge intenta descargar el archivo comprimido y evalúa si hay cambios. Si se encuentra una nueva versión del archivo DACPAC, los cambios se implementan en la base de datos de SQL Edge.

Problema conocido

Durante algunas implementaciones de DACPAC o BACPAC, los usuarios pueden enfrentarse a un tiempo de espera de comando, lo que produce un error en la operación de implementación de DACPAC. Si se produce este problema, use SQLPackage.exe (o las herramientas de cliente SQL) para aplicar DACPAC o BACPAC manualmente.