Sintomas
No Microsoft SQL Server 2019, você tenta restaurar um banco de dados grande executando o seguinte comando:
USE [master]
RESTORE DATABASE [DatabaseName]
FROM DISK = N'/var/opt/mssql/data/FileName'
WITH FILE = 1, MOVE N'Archive_HR' TO N'/var/opt/mssql/data/FileName', MOVE N'DatabaseName' TO N'/var/opt/mssql/data/FileName', NOUNLOAD, STATS = 5
Esse comando retorna a seguinte mensagem de erro:
Início da execução da consulta na Linha LineNumber
Msg 42019, Nível 16, Estado 4, Linha LineNumber
Falha na operação RESTORE MANAGED DATABASE. Erro de serviço interno.
Msg 3013, Nível 16, Estado 1, Linha LineNumber
RESTORE DATABASE está sendo encerrado de modo anormal.
Tempo de execução total: 00:01:51.093
Status
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".
Resolução
Esse problema é corrigido na seguinte atualização cumulativa para o SQL Server:
Sobre atualizações cumulativas para o SQL Server:
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes para o SQL Server:
Solução alternativa
Para contornar o problema, você pode usar o IP do serviço Kubernetes criado abaixo e conectar-se à instância do SQL Server:
Exponha a porta 1533:
kubectl -n <namespaceName> expose pod <podName> --port=1533 --name=<serviceName> --type=NodePort
E então você pode executar manualmente as quatro instruções a seguir:
- Restaurar banco de dados
- ALTER DATABASE <databaseName> SET RECOVERY FULL
- BACKUP DATABASE <databaseName> TO DISK='NUL'
- ALTER AVAILABILITY GROUP containedag ADD DATABASE <databaseName>
Referências
Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.