Sintomas
Suponha que você tenha um banco de dados que contenha grupos de arquivos somente leitura no Microsoft SQL Server 2014. Quando você executa DBCC CHECKDB no banco de dados, o comando DBCC não pode criar uma snapshot de banco de dados para o banco de dados.
Se não houver outra conexão com o banco de dados, a operação do DBCC será concluída sem erros. No entanto, a seguinte mensagem de erro é exibida:
Observação
DBCC CHECKDB não marcar SQL Server a consistência do catálogo ou do Service Broker porque um snapshot de banco de dados não pôde ser criado ou porque WITH TABLOCK foi especificado.
Se houver outras conexões com o banco de dados, a operação do DBCC falhará e você receberá a seguinte mensagem de erro:
Observação
Mensagem 5030, Nível 16, Estado 12, Linha 1
O banco de dados não pôde ser bloqueado exclusivamente para executar a operação.
Mensagem 7926, Nível 16, Estado 1, Linha 1
Instrução de verificação anulada. Não foi possível verificar o banco de dados, pois um snapshot do banco de dados não pôde ser criado e o banco de dados ou a tabela não pôde ser bloqueado. Consulte Manuais Online para obter detalhes sobre quando esse comportamento é esperado e quais soluções alternativas existem. Consulte também os erros anteriores para obter mais detalhes.
Resolução
Informações sobre a atualização cumulativa
O problema foi corrigido pela primeira vez na atualização cumulativa seguinte do SQL Server.
Recomendação: instalar a atualização cumulativa mais recente 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. Recomendamos que você baixe e instale as atualizações cumulativas mais recentes para o SQL Server:
Mais informações
Para reproduzir esse problema, execute os seguintes comandos no SQL Server:
Observação
-- Open a new query that is named conn1, and then create a new database. CREATE DATABASE DbTest GO -- Add a new file group. ALTER DATABASE DbTest ADD FILEGROUP FGTest GO -- Add a file to the new file group. ALTER DATABASE DbTest ADD FILE (NAME=DbTest_Data2, FILENAME=''C:\temp\DbTest_Data2.ndf') TO FILEGROUP FGTest GO -- Change the file group to read-only. ALTER DATABASE DbTest MODIFY FILEGROUP FGTest READONLY GO -- Run the DBCC CHECK command in the conn1 query. DBCC CHECKDB (DbTest) -- The DBCC CHECK command runs correctly. However, you may receive the following message: "DBCC CHECKDB will not check SQL Server catalog or Service Broker consistency because a database snapshot could not be created or because WITH TABLOCK was specified." -- Open a new query window that is named conn2, and then set the database as DbTest. This action opens a connection to the DbTest database. -- Return to the conn1 query, and run the DBCC command again. DBCC CHECKDB (DbTest) -- Notice the error message that is mentioned in the "Symptoms" section.
Status
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".