Symptoms
In Microsoft SQL Server 2019, you try to restore a large database by running the following command:
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
This command returns the following error message:
Started executing query at Line LineNumber
Msg 42019, Level 16, State 4, Line LineNumber
RESTORE MANAGED DATABASE operation failed. Internal service error.
Msg 3013, Level 16, State 1, Line LineNumber
RESTORE DATABASE is terminating abnormally.
Total execution time: 00:01:51.093
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
Resolution
This issue is fixed in the following cumulative update for SQL Server:
About cumulative updates for SQL Server:
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:
Workaround
To work around the issue, you can use the IP from the Kubernetes service created below and connect to the SQL Server instance:
expose the 1533 port:
kubectl -n <namespaceName> expose pod <podName> --port=1533 --name=<serviceName> --type=NodePort
And then you can manually run the following four statements:
-
restore database
-
ALTER DATABASE <databaseName> SET RECOVERY FULL
-
BACKUP DATABASE <databaseName> TO DISK='NUL'
-
ALTER AVAILABILITY GROUP containedag ADD DATABASE <databaseName>
References
Learn about the terminology that Microsoft uses to describe software updates.