Hvordan automatisere DBCC CHECKDB etter en database gjenopprette

hvorfor kjører DBCC CHECKDB?

DBCC CHECKDB sjekker den logiske og fysiske integriteten til alle objektene i en database og gir informasjon om korrupsjon.det anbefales å kjøre DET på en produksjonsserver når det er så mindre trafikk som mulig, eller enda bedre, som en av måtene å øke HASTIGHETEN PÅ DBCC CHECKDB-prosessen, er å overføre arbeidet til en annen server ved å automatisere en prosess og kjøre CHECKDB etter en databasegjenoppretting. Som en backup prosess er en kopi av en database og en restaurert database vil være nøyaktig det samme som en online database derfor hvis det var noen uoverensstemmelser eller problemer de vil være i backup, og funnet i en gjenoppretting. Ved å bruke denne tilnærmingen både gjenoppretter vil bli testet og sikkerhetskopier bekreftet uten noen innvirkning på en produksjonsdatabase.

Kjører DBCC CHECKDB etter en gjenoppretting kan også være en god praksis hvis en backup kvalitet er ukjent.I denne artikkelen beskriver vi hvordan du automatiserer EN DBCC CHECKDB etter en databasegjenoppretting ved å automatisere DBCC CHECKDB etter en databasegjenoppretting ved HJELP AV EN SQL Server Agent-jobb Og Vedlikeholdsplaner.

slik automatiserer du DBCC CHECKDB etter en databasegjenoppretting ved hjelp AV EN SQL Server Agent-jobb

for å automatisere DBCC CHECKDB etter en databasegjenoppretting ved HJELP AV SQL Server Agent:

  1. Velg En Ny Jobb fra sql Server Agent-noden ➜ Jobs
  2. Opprett et første trinn og angi en sikkerhetskopi av databasen som skal gjenopprettes ved hjelp av følgende skript:

    RESTORE DATABASE AdventureWorks2014CheckDB FROM DISK = 'E:\EncBackup\AdventureWorks2014_Full_20150612_1916.bak' WITH RECOVERYGO

  3. Legg til et andre trinn for å utføre DBCC CHECKDB på en gjenopprettet database ved å legge til følgende T-SQL-skript:

    DBCC CHECKDB (AdventureWorks2014CheckDB)

    for å undertrykke unødvendige informasjonsmeldinger:

    DBCC CHECKDB (AdventureWorks2014CheckDB) WITH NO_INFOMSGS

    for å sjekke indekserte visninger, romlige og XML-indekser:

    DBCC CHECKDB (AdventureWorks2014CheckDB) WITH EXTENDED_LOGICAL_CHECKS

    for å sjekke bare den fysiske strukturen til en database:

    DBCC CHECKDB (AdventureWorks2014CheckDB) WITH PHYSICAL_ONLY

    for å håndheve tabell-delt låsing:

    DBCC CHECKDB (AdventureWorks2014CheckDB) WITH TABLOCK

    disse alternativene kan kombineres med unntak av med physical_only-alternativet som ikke kan kombineres med noen av alternativene, som vil bli forklart senere i denne artikkelen.

  4. Planlegg en jobb til en ønsket frekvens for å utføre.Selv om relativt enkelt å sette opp ved HJELP AV EN SQL Server Agent jobb for disse operasjonene krever skrive T-SQL-skript og en kunnskap OM dbcc CHECKDB alternativer syntaks samt en kunnskap om hvert alternativ funksjonalitet og muligheter for å kombinere.

    hvordan automatisere DBCC CHECKDB etter en databasegjenoppretting ved Hjelp Av Vedlikeholdsplan

    Vedlikeholdsplaner kan også brukes til å utføre denne handlingen. Selv Om Verktøylinjen For Vedlikeholdsplaner ikke inneholder en gjenopprettingsoppgave, kan t-SQL-oppgaven brukes.

    for å automatisere DBCC CHECKDB etter en databasegjenoppretting ved Hjelp Av Vedlikeholdsplaner:

    1. Fra Administrasjonsnoden i Objektutforsker-ruten, Under Vedlikeholdsplaner velger Du Den Nye Vedlikeholdsplanen
    2. i Den Nye Vedlikeholdsplanen navn en ny plan
    3. fra Verktøylinjen For Vedlikeholdsplan velg Utfør T-SQL-Setningsoppgave

  5. dobbeltklikk OPPGAVEN OG LIM inn et t-sql-skript:

  6. legg til sjekk databaseintegritetsoppgave fra verktøylinjen for vedlikeholdsplan:

  7. Dobbeltklikk på en oppgave Og Velg en database for å kjøre oppgaven mot:

  8. når en vedlikeholdsplan er satt opp planlegg den som EN SQL Server Agent-jobb:

ulempen med denne tilnærmingen, i tillegg til å være Mer Komplisert å sette opp, er at check database integrity task for øyeblikket bare tilbyr indekser som et ekstra alternativ og utfører en full dbcc checkdb-sjekk.

Flere alternativer vil bli lagt til I EN SQL Server-2016-versjon.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.