Tutorial: Configurar bancos de dados espelhados do Microsoft Fabric a partir da Instância Gerenciada SQL do Azure (Visualização)
O espelhamento no Fabric é uma tecnologia SaaS, baseada em nuvem e sem ETL. Nesta seção, você aprenderá a criar um banco de dados espelhado da Instância Gerenciada SQL do Azure, que representa uma cópia somente leitura e replicada continuamente do banco de dados escolhido da sua Instância Gerenciada SQL do Azure no OneLake.
Pré-requisitos
- Crie ou use uma Instância Gerenciada SQL do Azure existente.
- A Política de Atualização para a Instância Gerenciada SQL do Azure de origem precisa ser configurada para "Sempre atualizada"
- A Instância Gerenciada SQL do Azure de origem pode ser uma única instância gerenciada SQL ou uma instância gerenciada SQL pertencente a um pool de instâncias.
- Se você não tiver uma Instância Gerenciada SQL do Azure, poderá criar uma nova instância gerenciada pelo SQL. Você pode usar a oferta gratuita da Instância Gerenciada SQL do Azure, se desejar.
- Durante a visualização atual, recomendamos o uso de uma cópia de um de seus bancos de dados existentes ou qualquer banco de dados de teste ou desenvolvimento existente que você possa recuperar rapidamente de um backup. Se você quiser usar um banco de dados de um backup existente, consulte Restaurar um banco de dados de um backup na Instância Gerenciada SQL do Azure.
- Você precisa de uma capacidade existente para o Fabric. Caso contrário, inicie uma avaliação do Fabric.
- A capacidade de malha precisa estar ativa e em execução. Uma capacidade pausada ou excluída afeta o espelhamento e nenhum dado é replicado.
- Habilitar a configuração de locatário de malha As entidades de serviço podem usar APIs de malha. Para saber como habilitar as configurações de locatário, consulte Sobre as configurações de locatário.
- Requisitos de rede para o Fabric acessar sua Instância Gerenciada SQL do Azure:
- Na visualização atual, o Espelhamento exige que sua Instância Gerenciada SQL do Azure tenha um ponto de extremidade público que precisa ser acessível a partir das tags de serviço do Azure Cloud ou do Power BI. Para obter mais informações, consulte Usar a Instância Gerenciada SQL do Azure com segurança com pontos de extremidade públicos Como executar com segurança um ponto de extremidade público para a Instância Gerenciada SQL do Azure.
Habilitar SAMI (System Assigned Managed Identity) da sua Instância Gerenciada SQL do Azure
A SAMI (System Assigned Managed Identity) da sua Instância Gerenciada SQL do Azure deve estar habilitada e deve ser a identidade principal para publicar dados no Fabric OneLake.
- Para configurar ou verificar se o SAMI está habilitado, vá para sua Instância Gerenciada SQL no portal do Azure. Em Segurança no menu de recursos, selecione Identidade.
- Em Identidade gerenciada atribuída ao sistema, selecione Status para Ativado.
- O SAMI deve ser a identidade principal. Verifique se o SAMI é a identidade principal com a seguinte consulta T-SQL:
SELECT * FROM sys.dm_server_managed_identities;
Entidade de banco de dados para malha
Em seguida, você precisa criar uma maneira para o serviço Fabric se conectar à sua Instância Gerenciada SQL do Azure.
Você pode fazer isso com um usuário de login e banco de dados mapeado. Seguindo o princípio de menor privilégio para segurança, você só deve conceder permissão CONTROL DATABASE no banco de dados que você pretende espelhar.
Usar um usuário de login e banco de dados mapeado
Conecte-se à sua Instância Gerenciada SQL do Azure usando o SQL Server Management Studio (SSMS) ou o Azure Data Studio. Conecte-se ao
master
banco de dados.Crie um login de servidor e atribua as permissões apropriadas.
- Crie um logon autenticado SQL. Você pode escolher qualquer nome para este login, substitua-o no script a seguir por
<fabric_login>
. Forneça a sua própria palavra-passe forte. Execute o seguinte script T-SQL nomaster
banco de dados:
CREATE LOGIN <fabric_login> WITH PASSWORD = '<strong password>'; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER <fabric_login>;
- Ou crie um login autenticado pelo Microsoft Entra ID a partir de uma conta existente. Execute o seguinte script T-SQL no
master
banco de dados:
CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER; ALTER SERVER ROLE [##MS_ServerStateReader##] ADD MEMBER [bob@contoso.com];
- Crie um logon autenticado SQL. Você pode escolher qualquer nome para este login, substitua-o no script a seguir por
Alterne o escopo da consulta para o banco de dados que você deseja espelhar. Substitua o nome do banco de dados e
<mirroring_source_database>
execute o seguinte T-SQL:USE [<mirroring_source_database>];
Crie um usuário de banco de dados conectado ao login. Substitua o nome de um novo usuário do banco de dados para esta finalidade por
<fabric_user>
:CREATE USER <fabric_user> FOR LOGIN <fabric_login>; GRANT CONTROL TO <fabric_user>;
Ou, para logins do Microsoft Entra,
CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com]; GRANT CONTROL TO [bob@contoso.com];
Criar um banco de dados espelhado da Instância Gerenciada SQL do Azure
- Abra o portal do Fabric.
- Use um espaço de trabalho existente ou crie um novo espaço de trabalho.
- Navegue até o painel Criar . Selecione o ícone Criar .
- Role até a seção Data Warehouse e selecione Instância Gerenciada SQL do Azure espelhada (visualização).
Conectar-se à sua Instância Gerenciada SQL do Azure
Para habilitar o Espelhamento, você precisa se conectar à Instância Gerenciada SQL do Azure a partir do Fabric para iniciar a conexão entre a Instância Gerenciada do SQL e a Malha. As etapas a seguir guiam você pelo processo de criação da conexão com sua Instância Gerenciada SQL do Azure:
- Em Novas fontes, selecione Instância Gerenciada SQL do Azure. Ou selecione uma conexão existente da Instância Gerenciada SQL do Azure no catálogo do OneLake.
- Não é possível usar conexões existentes da Instância Gerenciada SQL do Azure com o tipo "SQL Server" (tipo de conexão genérica). Somente conexões com o tipo de conexão "Instância Gerenciada SQL" são suportadas para espelhamento de dados da Instância Gerenciada SQL do Azure.
- Se você selecionou Nova conexão, insira os detalhes da conexão para a Instância Gerenciada SQL do Azure. Você precisa se conectar a um banco de dados específico, não é possível configurar o espelhamento para toda a instância gerenciada SQL e todos os seus bancos de dados.
- Servidor: você pode encontrar o nome do servidor navegando até a página Rede de Instância Gerenciada SQL do Azure no portal do Azure (no menu Segurança) e examinando o campo Ponto de Extremidade Público. Por exemplo,
<managed_instance_name>.public.<dns_zone>.database.windows.net,3342
. - Banco de dados: insira o nome do banco de dados que você deseja espelhar.
- Conexão: crie uma nova conexão.
- Nome da conexão: um nome automático é fornecido. Você pode alterá-lo para facilitar a localização dessa conexão de banco de dados de instância gerenciada SQL em um momento futuro, se necessário.
- Tipo de autenticação:
- Básico (Autenticação SQL)
- Conta da organização (Microsoft Entra ID)
- ID do Locatário (Azure Service Principal)
- Servidor: você pode encontrar o nome do servidor navegando até a página Rede de Instância Gerenciada SQL do Azure no portal do Azure (no menu Segurança) e examinando o campo Ponto de Extremidade Público. Por exemplo,
- Selecione Ligar.
Iniciar o processo de espelhamento
A tela Configurar espelhamento permite espelhar todos os dados no banco de dados, por padrão.
Espelhar todos os dados significa que todas as novas tabelas criadas após o início do espelhamento serão espelhadas.
Opcionalmente, escolha apenas determinados objetos para espelhar. Desative a opção Espelhar todos os dados e selecione tabelas individuais do banco de dados.
Se as tabelas não puderem ser espelhadas, elas mostrarão um ícone de erro e um texto de explicação relevante. Da mesma forma, se as tabelas só podem espelhar com limitações, um ícone de aviso é mostrado com texto explicativo relevante.
Para este tutorial, selecionamos a opção Espelhar todos os dados .
Na próxima tela, dê um nome ao item de destino e selecione Criar banco de dados espelhado. Agora aguarde um ou dois minutos para que o Fabric provisione tudo para você.
Após 2 a 5 minutos, selecione Monitorar replicação para ver o status.
Após alguns minutos, o status deve mudar para Executando, o que significa que as tabelas estão sendo sincronizadas.
Se você não vir as tabelas e o status de replicação correspondente, aguarde alguns segundos e atualize o painel.
Quando a cópia inicial das tabelas estiver concluída, uma data aparecerá na coluna Última atualização .
Agora que seus dados estão ativos e em execução, há vários cenários de análise disponíveis em toda a malha.
Importante
Qualquer segurança granular estabelecida no banco de dados de origem deve ser reconfigurada no banco de dados espelhado no Microsoft Fabric.
Espelhamento de malha do monitor
Depois que o espelhamento estiver configurado, você será direcionado para a página Status do espelhamento. Aqui, você pode monitorar o estado atual da replicação.
Estes são os status de replicação:
Para monitoramento geral no nível do banco de dados:
- Em execução – A replicação está em execução no momento, trazendo instantâneos e dados de alteração para o OneLake.
- Executando com aviso: A replicação está em execução, com erros transitórios
- Parar/Parar – A replicação é interrompida.
- Erro – Erro fatal na replicação que não pode ser recuperado.
Para monitorização ao nível da tabela:
- Em execução – Os dados da tabela estão sendo replicados com êxito para o depósito.
- Executando com aviso – Aviso de erro não fatal com replicação dos dados da tabela
- Parar/Parar - A replicação foi interrompida
- Erro – Erro fatal na replicação para essa tabela.
Se a sincronização inicial for concluída, um carimbo de data/hora Última conclusão será mostrado ao lado do nome da tabela. Este carimbo de data/hora indica a hora em que o Fabric verificou pela última vez a tabela em busca de alterações.
Além disso, observe a coluna Linhas replicadas . Ele conta todas as linhas que foram replicadas para a tabela. Cada vez que uma linha é replicada, ela é contada novamente. Isso significa que, por exemplo, inserir uma linha com chave primária =1 na origem aumenta a contagem de "Linhas replicadas" em um. Se você atualizar a linha com a mesma chave primária, replicará para o Fabric novamente e a contagem de linhas aumentará em um, mesmo que seja a mesma linha replicada novamente. A malha conta todas as replicações que aconteceram na linha, incluindo inserções, exclusões e atualizações.
A tela de replicação do Monitor também reflete quaisquer erros e avisos com tabelas sendo espelhadas. Se a tabela tiver tipos de coluna sem suporte ou se a tabela inteira não for suportada (por exemplo, em índices de memória ou columnstore), uma notificação sobre a limitação será mostrada nesta tela. Para obter mais informações e detalhes sobre os estados de replicação, consulte Replicação de banco de dados espelhado do Monitor Fabric.
Importante
Se não houver atualizações nas tabelas de origem, o mecanismo replicador começará a recuar com uma duração exponencialmente crescente, de até uma hora. O mecanismo replicador retomará automaticamente a sondagem regular depois que os dados atualizados forem detetados.