Restaurar um banco de dados para o SQL Server 2022 a partir da Instância Gerenciada SQL do Azure

Aplica-se a:Instância Gerenciada SQL do Azure

Este artigo descreve como restaurar um backup de banco de dados da Instância Gerenciada SQL do Azure para o SQL Server 2022.

Descrição geral

O alinhamento do formato de banco de dados entre a Instância Gerenciada do SQL e o SQL Server 2022 oferece uma maneira fácil de copiar ou mover bancos de dados de sua instância gerenciada para uma edição Enterprise, Developer ou Standard do SQL Server 2022 hospedada localmente, em máquinas virtuais no Azure ou em outras nuvens.

A restauração de bancos de dados de instâncias gerenciadas para instâncias do SQL Server 2022 desbloqueia os seguintes cenários:

  • Garante a mobilidade do banco de dados entre a Instância Gerenciada do SQL e os produtos baseados no SQL Server.
  • Fornece cópias de banco de dados para clientes e outras partes qualificadas.
  • Atualiza ambientes fora da Instância Gerenciada SQL.

A capacidade de restaurar backups completos somente cópia de bancos de dados da Instância Gerenciada do SQL para o SQL Server 2022 está disponível por padrão em todas as instâncias implantadas existentes e novas.

Importante

A capacidade de restaurar backups completos somente cópia de bancos de dados da Instância Gerenciada do SQL para o SQL Server 2022 estará disponível até o final do suporte base para o SQL Server 2022.

Faça um backup na instância gerenciada do SQL

Primeiro, crie uma credencial para acessar a conta de armazenamento de sua instância, faça um backup somente cópia do banco de dados e armazene-a.

Você pode criar sua credencial usando uma identidade gerenciada ou um token de assinatura de acesso compartilhado (SAS).

Uma identidade gerenciada é um recurso do Microsoft Entra ID (anteriormente Azure Ative Directory) que fornece instâncias de serviços do Azure, como a Instância Gerenciada SQL do Azure, com uma identidade gerenciada automaticamente no Microsoft Entra ID, a identidade gerenciada atribuída ao sistema.

Pode utilizar esta identidade para autorizar pedidos de acesso a dados a outros recursos do Azure, incluindo contas de armazenamento. Serviços como a Instância Gerenciada SQL do Azure têm uma identidade gerenciada atribuída ao sistema e também podem ter uma ou mais identidades gerenciadas atribuídas pelo usuário. Pode utilizar identidades geridas atribuídas pelo sistema ou identidades geridas atribuídas pelo utilizador para autorizar os pedidos.

Antes de o administrador de armazenamento do Azure gravar um arquivo de backup em uma conta de armazenamento, ele deve conceder permissões à identidade gerenciada para gravar os dados. Conceder permissões para a identidade gerenciada da instância é feito da mesma forma que conceder permissões a qualquer outro usuário do Microsoft Entra. Por exemplo:

  1. No portal do Azure, no painel Controle de Acesso (IAM) de uma conta de armazenamento, selecione Adicionar atribuição de função.

  2. Selecione a função RBAC (controle de acesso baseado em função) interna do Colaborador de Dados de Blob de Armazenamento . Assim, é proporcionado acesso de leitura/escrita à identidade gerida para os contentores de Armazenamento de Blobs do Azure necessários.

    Em vez de conceder à identidade gerenciada a função RBAC do Azure Blob de Contribuidor de Dados de Armazenamento, você pode conceder permissões mais granulares. Para saber mais, consulte Definir ACLs no Azure Data Lake Storage Gen2.

  3. Na página seguinte, em Atribuir acesso a, selecione Identidade gerenciada.

  4. Escolha Selecionar membros e, na lista suspensa Identidade gerenciada, selecione a identidade gerenciada apropriada. Para obter mais informações, consulte Atribuir funções do Azure usando o portal do Azure.

Agora, criar a credencial com escopo de banco de dados para autenticação de identidade gerenciada é simples.

No exemplo a seguir, observe que Managed Identity é uma cadeia de caracteres codificada e você precisa substituir o nome da conta de armazenamento genérica pelo nome da conta de armazenamento real:

CREATE CREDENTIAL [https://<mystorageaccountname>.blob.core.windows.net/<containername>] 
WITH IDENTITY = 'MANAGED IDENTITY'  

Em seguida, faça um COPY_ONLY backup do banco de dados executando o seguinte comando T-SQL de exemplo:

BACKUP DATABASE [SampleDB]
TO URL = 'https://<mystorageaccountname>.blob.core.windows.net/<containername>/SampleDB.bak'
WITH COPY_ONLY

Restaurar para o SQL Server

Restaure o banco de dados para o SQL Server usando a WITH MOVE opção do comando RESTORE DATABASE T-SQL e fornecendo caminhos de arquivo explícitos para seus arquivos no servidor de destino.

Para restaurar seu banco de dados para o SQL Server, execute o seguinte comando T-SQL de exemplo com caminhos de arquivo apropriados ao seu ambiente:

RESTORE DATABASE [SampleDB]
FROM URL = 'https://<mystorageaccountname>.blob.core.windows.net/<containername>/SampleDB.bak'
WITH
MOVE 'data_0' TO 'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\SampleDB_data_0.mdf',
MOVE 'log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\SampleDBlog.ldf',
MOVE 'XTP' TO 'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\SampleDB_xtp.xtp'

Nota

Para restaurar bancos de dados criptografados em repouso usando a TDE (Criptografia de Dados Transparente), a instância de destino do SQL Server deve ter acesso à mesma chave usada para proteger o banco de dados de origem por meio do SQL Server Connector for Azure Key Vault. Para obter detalhes, consulte Configurar o SQL Server TDE com AKV.

Considerações

Ao restaurar um banco de dados para o SQL Server, considere o seguinte:

  • Você deve usar o qualificador e fornecer caminhos explícitos WITH MOVE para os arquivos de dados.
  • Os bancos de dados criptografados com chaves TDE gerenciadas por serviço não podem ser restaurados no SQL Server. Você pode restaurar um banco de dados criptografado para o SQL Server somente se ele tiver sido criptografado com uma chave gerenciada pelo cliente e o servidor de destino tiver acesso à mesma chave usada para criptografar o banco de dados. Para obter mais informações, consulte Configurar o SQL Server TDE com o Azure Key Vault.
  • No futuro, alguns recursos podem ser introduzidos na Instância Gerenciada SQL do Azure que exigem alterações no formato do banco de dados, tornando os backups incompatíveis com o SQL Server 2022. O acesso a tais recursos exigirá o consentimento explícito.

Próximos passos