Sintomas
Assuma que está a tentar restaurar uma base de dados utilizando a opção SUBSTITU no SQL Server 2017. Se o filepath contiver separadores de caminhos redundantes na BASE DE DADOS CREATE, poderá receber mensagens de erro que se assemelham ao seguinte:
Msg 3634, Nível 16, Estado 1, LineNumber
O sistema operativo devolveu o erro '32(O processo não pode aceder ao ficheiro porque está a ser utilizado por outro processo.)» enquanto tenta 'RestoreContainer::ValidateTargetForCreation' em'FilePath\FileName.mdf'.
Msg 3156, Nível 16, Estado 8, LineNumber
File 'FileName' não pode ser restaurado para 'FilePath\FileName.mdf'. Utilize o MOVE para identificar uma localização válida para o ficheiro.
Msg 3634, Nível 16, Estado 1, LineNumber
O sistema operativo devolveu o erro '32(O processo não pode aceder ao ficheiro porque está a ser utilizado por outro processo.)» enquanto tenta 'RestoreContainer::ValidateTargetForCreation' em'FilePath\FileName.ldf'.
Msg 3156, Nível 16, Estado 8, LineNumber
File 'FileName' não pode ser restaurado para 'FilePath\FileName.ldf'. Utilize o MOVE para identificar uma localização válida para o ficheiro.
Msg 3119, Nível 16, Estado 1, LineNumber
Os problemas foram identificados durante o planeamento da declaração RESTORE. As mensagens anteriores fornecem detalhes.
Msg 3013, Nível 16, Estado 1, LineNumber
A BASE DE DADOS RESTAURADA está a terminar de forma anormal.
Solução
Obtém-se este erro quando está a tentar restaurar com a opção SUBSTITU. Como solução, pode eliminar a base de dados existente e fazer uma restauração.
Resolução
Esta emissão é corrigida na seguinte atualização cumulativa 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 que foram incluídas com a atualização cumulativa anterior. Confira as últimas atualizações cumulativas do SQL Server:
Mais informações
Sobre o caminho, não é o caminho para a localização de reserva, é o caminho do arquivo no cabeçalho de reserva que pode ser visto apenas com cabeçalhos de restauro. Para obter mais informações, consulte DECLARAÇÕES RESTORE - HEADERONLY (Transact-SQL). Por exemplo:
RESTORE HEADERONLY
FROM DISK = N'FilePath\FileName.bak'
WITH NOUNLOAD;
GO
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".
Referências
Conheça a terminologiaque a Microsoft utiliza para descrever atualizações de software.