SqlPackage no banco de dados SQL no Microsoft Fabric
Aplica-se a:✅banco de dados SQL no Microsoft Fabric
Neste tutorial, você aprenderá a trabalhar com o SqlPackage no banco de dados SQL no Fabric.
O SqlPackage é uma CLI que fornece portabilidade de banco de dados e implantações de banco de dados.
- A portabilidade (importação/exportação) de um banco de dados gerenciado no Azure ou no Fabric garante que seus dados sejam portáteis para outras plataformas, incluindo o SQL Server ou a Instância Gerenciada de SQL do Azure, caso você queira migrar mais tarde.
- A mesma portabilidade também permite determinados cenários de migração por meio de cópias de banco de dados independentes (
.bacpac
) com operações de importação/exportação.
O SqlPackage também pode permitir implantações fáceis de banco de dados de alterações incrementais em objetos de banco de dados (novas colunas em tabelas, alterações em procedimentos armazenados existentes etc.).
- O SqlPackage pode extrair um arquivo
.dacpac
que contém as definições de objetos em um banco de dados e publicar um arquivo.dacpac
para aplicar esse estado de objeto a um banco de dados novo ou existente. - A operação de publicação também se integra a projetos SQL, o que permite ciclos de desenvolvimento offline e mais dinâmicos para bancos de dados SQL.
Pré-requisitos
- Você precisa de uma capacidade existente no Fabric. Caso não tenha isso, inicie uma avaliação do Fabric.
- Certifique-se de Habilitar o banco de dados SQL nas configurações de locatário do Fabric.
- Crie um novo espaço de trabalho ou use um espaço de trabalho existente do Fabric.
- Crie ou use um banco de dados SQL existente no Fabric. Se você ainda não tiver um, crie um novo banco de dados SQL no Fabric.
- Instale o SDK do .NET 8.
Instalação
O SqlPackage está disponível para Windows, macOS e Linux como uma ferramenta dotnet. Instale-o usando o comando a seguir:
dotnet tool install --global Microsoft.SqlPackage
Como uma ferramenta dotnet global, o SqlPackage está disponível em seu terminal como sqlpackage
em qualquer pasta.
Importar um banco de dados com SqlPackage
Uma .bacpac
é uma cópia portátil de um banco de dados, útil para alguns cenários de migração e teste. Você poderá importá-lo para .bacpac
um banco de dados SQL vazio.
Observação
Um .bacpac
não é um backup ou uma substituição para recursos de backup/restauração. Para obter mais informações sobre backups no banco de dados SQL do Fabric, consulte Backups automáticos no banco de dados SQL no Microsoft Fabric e Restaurar de um backup no banco de dados SQL no Microsoft Fabric.
Se estiver usando um
.bacpac
do ambiente do Banco de Dados SQL do Azure, talvez seja necessário alterar o banco de dados de origem para atender à área de superfície T-SQL do Banco de Dados SQL do Fabric.Crie seu novo banco de dados SQL no Fabric como de costume por meio da interface do Fabric.
Copie a cadeia de conexão das configurações.
Use o comando de importação do terminal na pasta do SqlPackage. Forneça seu proprietário
<servername>
e<database_name>
.sqlpackage /action:import /sourcefile:"C:\DatabaseName.bacpac" /targetconnectionstring:"Data Source=tcp:<server_name>.database.fabric.microsoft.com,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
- Substitua a cadeia de conexão da caixa de diálogo configurações do banco de dados SQL.
- Substitua o valor
sourcefile
pelo.bacpac
nome (DatabaseName
) elocation
no computador local.
Para obter mais informações sobre a importação, consulte a Importação do SqlPackage.
Exportar um banco de dados com SqlPackage
Exportar uma .bacpac
é a operação inversa, em que você targetfile
é um .bacpac
e seusourceconnectionstring
pode ser encontrado na caixa de diálogo configurações do banco de dados SQL, como no exemplo anterior. Forneça seu proprietário <servername>
e <database_name>
. Por exemplo:
sqlpackage.exe /action:export /targetfile:"C:\DatabaseName.bacpac" /sourceconnectionstring:"Data Source=tcp:<server_name>.database.fabric.microsoft.com,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
Para obter mais informações sobre exportação, consulte a Exportação do SqlPackage.
Extrair e publicar
Um .dacpac
é um arquivo de modelo de esquema de banco de dados, contendo definições para as tabelas, procedimentos armazenados e outros objetos no banco de dados de origem. Esse arquivo pode ser criado a partir de um banco de dados existente com SqlPackage ou de um projeto de banco de dados SQL .
O SqlPackage é capaz de implantar um .dacpac
para um banco de dados novo (vazio) ou atualizar incrementalmente um banco de dados existente para corresponder ao estado .dacpac
desejado.
- Extrair cria um
.dacpac
ou arquivos do SQL de um banco de dados existente. - Publicar implanta um
.dacpac
em um banco de dados.
A sintaxe de publish e extract do SqlPackage é semelhante aos comandos import/export.
Aviso
É recomendável usar o SqlPackage para implantar um projeto SQL ou .dacpac
no banco de dados SQL no Fabric. A implantação de um .dacpac
do Visual Studio pode não ter êxito.
Para implantar um .dacpac
criado do Banco de Dados SQL do Azure, do SQL Server ou de um projeto SQL direcionado a uma plataforma diferente do banco de dados SQL no Fabric, acrescente a propriedade /p:AllowIncompatiblePlatform=true
ao comando de publicação SqlPackage.