AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / dba / Perguntas / 237886
Accepted
BradC
BradC
Asked: 2019-05-11 13:27:31 +0800 CST2019-05-11 13:27:31 +0800 CST 2019-05-11 13:27:31 +0800 CST

Serei notificado de que BACKUP encontrou um erro CHECKSUM se eu usar CONTINUE_AFTER_ERROR?

  • 772

Estou no processo de adicionar o WITH CHECKSUMsinalizador em nossos backups diários de SQL, como parte de um esforço para garantir melhor a integridade dos dados.

Eu definitivamente quero saber se um erro de soma de verificação é encontrado, mas também não quero que meu trabalho pare na água no meio da noite; Eu quero que ele termine de fazer o backup do banco de dados "ruim" e continue fazendo o backup dos outros bancos de dados no servidor.

Se eu usar BACKUP WITH CHECKSUM, CONTINUE_AFTER_ERROR, ele ainda lançará o erro apropriado ( SEV 22ou Error 825qualquer outra coisa) que acionará meu alerta associado? Ou CONTINUE_AFTER_ERRORsuprime isso completamente, e eu só saberia sobre o problema se analisasse a saída da etapa do trabalho?

Eu simplesmente testaria, mas não tenho um banco de dados com CHECKSUMinconsistências conhecidas.

backup sql-server-2012
  • 2 2 respostas
  • 156 Views

2 respostas

  • Voted
  1. eckes
    2019-05-12T08:29:52+08:002019-05-12T08:29:52+08:00

    Sim, vai continuar e terminar, há um exemplo neste post mais antigo. Ele também contém um arquivo de banco de dados quebrado (para versões mais antigas) para brincar:

    https://blogs.msdn.microsoft.com/sqlserverstorageengine/2007/04/17/example-corrupt-database-to-play-with-and-some-backuprestore-things-to-try/

    Eu acho que é realmente muito importante como dba simular todos esses casos, eu sei por experiência com clientes que é arriscado e demorado se você tiver que pesquisar esses métodos em um tempo de inatividade. Então parabéns por perguntar. Aqui está um método lunático/engenhoso para fazer corrupção com SQL:

    https://sqlblogcasts.com/blogs/tonyrogerson/archive/2007/03/10/how-to-create-a-corrupt-database-using-bulk-insert-update-and-bcp-sql-server-as- a-hex-editor.aspx

    • 2
  2. Best Answer
    BradC
    2019-05-14T13:22:11+08:002019-05-14T13:22:11+08:00

    Com uma pequena alteração nas instruções de Brent Ozar (usei SET PAGE_VERIFY CHECKSUMem vez de SET PAGE_VERIFY NONE), consegui criar um pequeno banco de dados com uma página corrompida (e, portanto, uma soma de verificação incompatível) em um ambiente de laboratório, para testar completamente todas as opções de backups possíveis.

    Isso me deu a resposta para minha pergunta: Sim , se você fizer um BACKUP WITH CHECKSUM, CONTINUE_AFTER_ERROR, ele ainda lançará um erro, mas esse erro não será Error: 824, Severity: 24, será Error: 3043, Severity: 16.

    No momento, não alerto sobre todos os Sev 16erros (prefiro não obter uma página toda vez que alguém cometer um erro de digitação em uma consulta), então tive que adicionar um novo alerta para Error 3043ser notificado quando esse problema ocorrer.

    Minha conclusão final, então, é: se você habilitar a soma de verificação de backup, certifique-se de também estar alertando sobre o erro 3043 .

    Algumas leituras e recursos adicionais:

    • Possíveis erros de mídia durante backup e restauração (SQL Server) Detalhes de referência do MS sobre somas de verificação de backup
    • Exemplo de banco de dados corrompido para brincar e algumas coisas de backup/restauração para tentar : Originalmente vinculado por @eckes, este artigo de Paul Randal tem um conteúdo excelente, mas o exemplo é SQL 2005.
    • Brent Ozar: Vamos corromper um banco de dados SQL Server juntos, parte 1: índices clusterizados . Exemplos claros, obrigado Brent por postar isso. E se você gostou desse, não perca a Parte 2: Índices não agrupados e a Parte 3: Detectando corrupção !
    • Desafio de corrupção de banco de dados de Steve Stedman : Desafios cada vez mais difíceis no diagnóstico e correção de corrupção de banco de dados. As soluções para cada um são postadas.
    • DBA SE: Que tipos de corrupção o DBCC CheckDB pode perder? A questão relacionada mais relevante que eu poderia encontrar aqui.
    • 1

relate perguntas

  • O SQL Server não deveria oferecer suporte a RANGE?

  • O que é SQL Server "Denali"? O que há de novo?

  • Agendador de tarefas para SQL Server Express

  • Posso ativar o PITR depois que o banco de dados foi usado

  • Backups de banco de dados no Oracle - Exportar o banco de dados ou usar outras ferramentas?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host

    • 12 respostas
  • Marko Smith

    Como fazer a saída do sqlplus aparecer em uma linha?

    • 3 respostas
  • Marko Smith

    Selecione qual tem data máxima ou data mais recente

    • 3 respostas
  • Marko Smith

    Como faço para listar todos os esquemas no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Listar todas as colunas de uma tabela especificada

    • 5 respostas
  • Marko Smith

    Como usar o sqlplus para se conectar a um banco de dados Oracle localizado em outro host sem modificar meu próprio tnsnames.ora

    • 4 respostas
  • Marko Smith

    Como você mysqldump tabela (s) específica (s)?

    • 4 respostas
  • Marko Smith

    Listar os privilégios do banco de dados usando o psql

    • 10 respostas
  • Marko Smith

    Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL?

    • 4 respostas
  • Marko Smith

    Como faço para listar todos os bancos de dados e tabelas usando o psql?

    • 7 respostas
  • Martin Hope
    Jin conectar ao servidor PostgreSQL: FATAL: nenhuma entrada pg_hba.conf para o host 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane Como faço para listar todos os esquemas no PostgreSQL? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh Por que o log de transações continua crescendo ou fica sem espaço? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland Listar todas as colunas de uma tabela especificada 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney O MySQL pode realizar consultas razoavelmente em bilhões de linhas? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx Como posso monitorar o andamento de uma importação de um arquivo .sql grande? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison Como você mysqldump tabela (s) específica (s)? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas Como posso cronometrar consultas SQL usando psql? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas Como inserir valores em uma tabela de uma consulta de seleção no PostgreSQL? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas Como faço para listar todos os bancos de dados e tabelas usando o psql? 2011-02-18 00:45:49 +0800 CST

Hot tag

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve