SqlPackage para la base de datos SQL de Microsoft Fabric
Se aplica a:✅Base de datos SQL de Microsoft Fabric
En este tutorial, obtendrá información sobre cómo trabajar con SqlPackage en la base de datos SQL en Fabric.
sqlPackage es una CLI que proporciona portabilidad de bases de datos e implementaciones de bases de datos.
- La portabilidad (importación y exportación) de una base de datos administrada en Azure o en Fabric garantiza que los datos se puedan transportar a otras plataformas, incluidas SQL Server o Azure SQL Managed Instance, si desea migrarlos más adelante.
- La misma portabilidad también permite determinados escenarios de migración a través de copias de la base de datos independiente (
.bacpac
) con operaciones de importación y exportación.
SqlPackage también puede permitir implementaciones de bases de datos sencillas de cambios incrementales en objetos de base de datos (nuevas columnas en tablas, modificaciones en procedimientos almacenados existentes, etc.).
- SqlPackage puede extraer un archivo
.dacpac
con las definiciones de objetos de una base de datos y publicar un archivo.dacpac
para aplicar el estado de ese objeto a una base de datos nueva o existente. - La operación de publicación también se integra con proyectos de SQL, lo que permite ciclos de desarrollo sin conexión y más dinámicos para bases de datos SQL.
Requisitos previos
- Necesita una capacidad de Fabric existente. Si no tiene, inicie una versión de prueba de Fabric.
- Asegúrese de Habilitar la base de datos SQL en la configuración del inquilino de Fabric.
- Crear una nueva área de trabajo o usar un área de trabajo existente de Fabric.
- Cree o utilice una base de datos SQL de Fabric existente. Si aún no tiene una, crear una nueva base de datos SQL en Fabric.
- Instalar el SDK de .NET 8.
Configurar
SqlPackage está disponible para Windows, macOS y Linux como herramienta dotnet. Puede instalarlo mediante el siguiente comando:
dotnet tool install --global Microsoft.SqlPackage
Como herramienta dotnet global, SqlPackage está disponible en el terminal como sqlpackage
desde cualquier carpeta.
Importación de una base de datos con SqlPackage
Un .bacpac
es una copia portátil de una base de datos, útil para algunos escenarios de migración y pruebas. Puede importar ese .bacpac
en una base de datos SQL vacía.
Nota:
Un .bacpac
no es una copia de seguridad ni un reemplazo de las funcionalidades de copia de seguridad y restauración. Para obtener más información sobre las copias de seguridad en la base de datos SQL en Fabric, consulte Copias de seguridad automáticas en la base de datos SQL de Microsoft Fabric y Restaurar a partir de una copia de seguridad en la base de datos SQL de Microsoft Fabric.
Si usa un
.bacpac
desde el entorno de Azure SQL Database, es posible que tenga que modificar la base de datos de origen para cumplir con el área expuesta de T-SQL de la base de datos SQL de Fabric.Cree la nueva base de datos SQL en Fabric como de costumbre a través de la interfaz de Fabric.
Copie la cadena de conexión desde Configuración.
Use el comando import desde el terminal en la carpeta sqlpackage. Proporcione al propietario
<servername>
y<database_name>
.sqlpackage /action:import /sourcefile:"C:\DatabaseName.bacpac" /targetconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
- Reemplace la cadena de conexión del cuadro de diálogo Configuración de la base de datos SQL.
- Reemplace el valor
sourcefile
por el nombre.bacpac
(DatabaseName
) ylocation
en el equipo local.
Para obtener más información sobre la importación, consulte Importación de SqlPackage.
Exportación de una base de datos con SqlPackage
La exportación de un .bacpac
es la operación inversa, donde su targetfile
es un .bacpac
y su sourceconnectionstring
se puede encontrar en el cuadro de diálogo Configuración de la base de datos SQL, como en el ejemplo anterior. Proporcione al propietario <servername>
y <database_name>
. Por ejemplo:
sqlpackage.exe /action:export /targetfile:"C:\DatabaseName.bacpac" /sourceconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
Para obtener más información sobre la exportación, consulte Exportación de SqlPackage.
Extracción y publicación
Un .dacpac
es un archivo de modelo de esquema de la base de datos, que contiene definiciones para las tablas, procedimientos almacenados y otros objetos de la base de datos de origen.
SqlPackage es capaz de implementar un .dacpac
en una base de datos nueva (vacía) o actualizar una base de datos existente de forma incremental para que coincida con el estado de .dacpac
deseado.
- La extracción crea un
.dacpac
o archivos SQL a partir de una base de datos existente. - La publicación implementa un
.dacpac
en una base de datos.
La sintaxis Publicación de SqlPackage es similar a los comandos import/export.