MSSQLSERVER_3859
Aplica-se: SQL Server
Detalhes
Atributo | Valor |
---|---|
Nome do produto | SQL Server |
ID do evento | 3859 |
Origem do Evento | MSSQLSERVER |
Componente | SQLEngine |
Nome simbólico | DBCC_CHECKCAT_DIRECT_UPDATE |
Texto da mensagem | Aviso: O catálogo do sistema foi atualizado diretamente na ID do banco de dados %d, mais recentemente em %S_DATE |
Explicação
Esse erro indica uma alteração iniciada pelo usuário nas tabelas do sistema. Não há suporte para a atualização manual de tabelas do sistema. As tabelas do sistema só devem ser atualizadas pelo mecanismo de banco de dados do SQL Server. Quando o SQL Server detecta alterações iniciadas pelo usuário nas tabelas do sistema, o erro 3859 é gerado nos dois cenários a seguir:
Cenário 1
Um evento semelhante ao seguinte é registrado no Log de Erros do SQL Server ou no log do aplicativo no Visualizador de Eventos quando você inicia um banco de dados do SQL Server que contém uma tabela do sistema que foi atualizada manualmente:
Nome do Log: Aplicativo
Fonte: MSSQLSERVER ID do evento: 3859
Categoria da tarefa: Servidor
Nível: Informações
Descrição: Aviso: o catálogo do sistema foi atualizado diretamente na ID do banco de dados %d, mais recentemente em date_timeCenário 2
A seguinte mensagem de aviso é retornada quando você executa o comando
DBCC_CHECKDB
depois que uma tabela do sistema é atualizada manualmente:Resultados do DBCC para 'database_name'.
Mensagem 8992, Nível 16, Estado 1, Linha 1
Verifique a mensagem de catálogo 3859, estado 1: Aviso: o catálogo do sistema foi atualizado diretamente na ID do banco de dados %d, mais recentemente em date_time.
CHECKDB encontrou 0 erros de alocação e 0 erros de consistência no banco de dados 'db_name'.
A execução do DBCC foi concluída. Se o DBCC imprimiu mensagens de erro, contate o administrador do sistema.
Ação do usuário
Para resolver esse problema, use um dos seguintes métodos.
Método 1
Caso você tenha um backup limpo do banco de dados, restaure o banco de dados do backup.
Observação
Esse método só funcionará se o backup não tiver inconsistências nos metadados.
Método 2
Caso você não possa restaurar o banco de dados por meio de um backup, exporte os dados e os objetos para um novo banco de dados. Em seguida, transfira o conteúdo do banco de dados atualizado manualmente para o novo banco de dados. Observe que não é possível reparar as inconsistências nos catálogos do sistema usando as opções REPAIR nos comandos DBCC CHECKDB. Portanto, como o comando não pode reparar os metadados corrompidos, o comando não fornece nenhum nível de reparo recomendado.
Observação
Veja os dados nas tabelas do sistema por meio das exibições do catálogo do sistema.
Mais informações
Para obter mais informações, consulte: Tabelas Base do Sistema.