sql >> Database teknologi >  >> RDS >> Sqlserver

Mulige måder at løse problemet med korruption af SQL Server-metadata

Det meste af tiden er de forfærdelige ting, som hver enkelt DBA skal administrere, databasekorruption. Hver DBA gemmer hans/hendes kritiske data i SQL'en, hvilken størrelse stiger med tiden. På hvilket tidspunkt SQL-databasen bliver beskadiget, beskadiger den ligeledes metadata i SQL-serveren. I øjeblikket er det grundlæggende at rette denne korruption, under alle omstændigheder ville alle data i SQL være i høj risiko.

I denne blog vil vi diskutere forskellige strategier til at rette SQL Server Metadata korruptionsfejl. Under alle omstændigheder, før vi fortsætter til det, lad os se på, hvad der er metadata og formål med en metadata-korruption.
Vigtig bemærkning: Hvis din SQL-database er beskadiget, og hele dine databasekomponenter er utilgængelige, kan brugeren tage hjælp af SysTools SQL-databasegendannelse værktøj. Dette hjælper brugeren med at løse korruptionsproblemer og hjælper brugeren med at gendanne vigtige SQL-databasekomponenter. Denne software understøtter SQL Server 2019 og alle dens tidligere versioner. Brugeren kan downloade softwaren herfra.

Hvad er metadata i SQL?

Metadata i SQL hentyder til "Data relateret til andre data", eller dybest set kan vi sige "Data om data." Alle data om SQL-databasen kan ses ved at køre sys.databases .

Se på denne forespørgsel:

Vælg * fra sys.databases

Når du kører sys.databases, vil nogle få funktioner i SQL Server returnere data om SQL-databasen. Disse funktioner er kendt som metadatafunktioner, en del af de grundlæggende metadatafunktioner er:

INDEX_COL, OBJECT_ID, OBJECT_NAME, COL_NAME, DB_NAME og så videre.

Hvad er SQL Server Metadata Korruption?

Det er det punkt, hvor dit framework ser, systemer, funktioner er beskadiget på grund af strømafbrydelse, virus, softwarefejl, hardwarefejl, nedlukningsproblemer eller andre årsager.

Mulige årsager til problemet med korruption af SQL Server-metadata

Metadata-korruption sker i SQL-serveren, når rammen, perspektiverne, metodikken og funktionerne bliver beskadiget. Nogle forskellige forklaringer på korruptionen kunne være:

  1. Utilsigtet sletning af data.
  2. Opdatering af softwareprogrammering fra den gamle version.
  3. Malware-/virusangreb på SQL-serveren.
  4. Abrat rammenedlukning eller tvungen lukning.
  5. På grund af data gemt i komprimerede mapper.

Hvordan opdager man korruption af SQL Server-metadata?

Databasekorruption i SQL kan genkendes ved hjælp af DBCC CHECKDB. Du kan køre denne forespørgsel for at finde fejl i den aktuelle database. Men for at skelne korruptionsmetadata skal du bruge en alternativ forespørgsel.

DBCC CHECKCATALOG

Denne forespørgsel bruges til at kontrollere og genkende korruption i SQLs metadata. Dette kontrollerer konsistensen af ​​listen for den foruddefinerede database. Når du kører denne forespørgsel, vises en advarselsmeddelelse på skærmen, der viser korruption i metadataene.

Teknikker til at rette SQL Server Metadata Korruption

Manuelle teknikker til at rette korruptionsfejl i metadata er begrænset. Den vigtigste manuelle teknik til at redde dine metadata fra korruption er at bruge backup- og gendannelseskommandoer. Under alle omstændigheder er denne løsning bare passende, hvis du normalt sikkerhedskopierer dine SQL-databaser. Den efterfølgende teknik inkluderer at rette rammetabellerne i SQL-databasen for at rette korruptionsfejlene. For at redde din SQL-database fra korruption, følg nedenstående trin:

  1. Luk serveren, og gå til fanen Avanceret.
  2. I konfigurationen manager , inkludere '- m;' til begyndelsen af ​​opstartsgrænsestrengen.
  3. Genstart serveren, og tilslut ved hjælp af DAC

Dette er ikke en pålidelig løsning til at rette korruptionsfejl. På denne måde foreslog vi at bruge et tredjepartsværktøj såsom SysTools SQL Recovery for at rette metadata-korruptionsfejlene.

Prøv en automatiseret løsning til at gendanne beskadigede databaseobjekter

Gendan SQL-database er det bedste valg til at rette metadata korruptionsfejl. Dette SQL-gendannelsesværktøj retter korruptionsfejlene samt gendanner alle databaseobjekter til SQL-serveren. Det tilbyder nogle altomfattende funktioner til kunderne, som inkluderer:

  • Kan til at gendanne data fra MDF- og LDF-filer.
  • Ret beskadigede SQL-databasefiler og gendan til Live SQL-server
  • Gendan slettede SQL-databaseobjekter samt tabelposter.
  • Gendan alle databaseobjekter som tabeller, funktioner, regler, indekser, filer og så videre.
  • Se forhåndsvisning af databaseobjekterne før eksport.
  • Passer til alle former for SQL-servere inklusive 2019 / 2016 / 2014 / 2012 / 2008 / og derunder.

Følg trinene for at gendanne vigtige SQL-databasekomponenter 

  1. Start softwaren på din maskine, og klik på Tilføj fil.

2. Gennemse MDF-filen fra dit system, og vælg Advanced Scan Mode og SQL Server-version. (Marker også muligheden eksporter slettede poster, hvis du vil eksportere slettede poster i SQL-databasen. )

3. Se forhåndsvisning af SQL-databaseobjekter såsom tabel, lagret procedure, funktioner, visninger osv.

4. Klik på knappen Eksporter for at eksportere Microsoft SQL Server-databasekomponenter.

Konklusion

Metadata i SQL er usædvanligt afgørende for foreninger og mennesker, og hvis disse oplysninger bliver korrupte, kan klienter miste alle deres data. På denne måde er det fundamentalt at finde en måde at beskytte det mod korruption. Derfor har vi i denne blog diskuteret nogle værdifulde fremskridt, der kan bruges til at rette SQL Server-metadatakorruption.


  1. Brug DB_ID() til at returnere id'et for en database i SQL Server

  2. Sådan dropper du database ved at bruge TSQL og GUI - SQL Server / TSQL Tutorial Del 25

  3. System til nulstilling af adgangskode i PHP

  4. Lær at udføre produktanalyse med SQL Server fuldtekstsøgning. Del 2