(Eu uso os scripts de Ola Hallengren há um bom tempo)... mas se houver uma consulta aberta, acabo com o seguinte:
Msg 5030, Sev 16, State 12, Line 1: O banco de dados não pôde ser bloqueado exclusivamente para executar a operação. [SQLSTATE 42000] Msg 7926, Sev 16, Estado 1, Linha 1: Instrução de verificação abortada. O banco de dados não pôde ser verificado porque um instantâneo do banco de dados não pôde ser criado e o banco de dados ou tabela não pôde ser bloqueado. Consulte o artigo 928518 da Base de Conhecimento Microsoft
Parâmetros: @Databases = 'USER_DATABASES', @CheckCommands = 'CHECKDB', @PhysicalOnly = 'N', @DataPurity = 'N', @NoIndex = 'N', @ExtendedLogicalChecks = 'N', @TabLock = 'N' , @FileGroups = NULL, @Objects = NULL, @MaxDOP = NULL, @AvailabilityGroups = NULL, @AvailabilityGroupReplicas = 'ALL', @Updateability = 'ALL', @TimeLimit = NULL, @LockTimeout = NULL, @LockMessageSeverity = 16, @StringDelimiter = ',', @DatabaseOrder = NULL, @DatabasesInParallel = 'N', @LogToTable = 'Y', @Execute = 'Y' Alguns dos meus bancos de dados não tiveram a verificação concluída há muito tempo. Existe uma maneira de contornar/corrigir esse problema de alguma forma?
Atenciosamente Ian
Acontece que no meu volume raiz, quando os bancos de dados são armazenados, reduzi as permissões padrão - aparentemente para aumentar a segurança.
Eu precisava que uma das 4 contas abaixo tivesse permissão READ no volume raiz (é por isso que os bancos de dados do sistema funcionavam como se estivessem em um local diferente)
Não consegui usar a conta do sistema, pois eles variam de acordo com a instância, então adicionei Usuários Autenticados de volta à raiz de D com permissão READ apenas para essa pasta e ei pronto... eureka e qualquer outra palavra FUNCIONOU
Os agradecimentos devem ir para o seguinte artigo (a primeira vez que o encontrei, devem ter sido meus parâmetros de pesquisa desta vez):
https://www.travisgan.com/2013/11/dbcc-checkdb-database-snapshot-failure.html
Afinal …. tão feliz, vamos tomar algumas cervejas esta noite