SQL Servers schemaändringshistorik kan vi känna igen namnet på databaser som släpptes från SQL Server. I en stor SQL Server-miljö är gränssnittet med varje Schema Change History för varje SQL Server-fall en extremt besvärlig uppgift. I den här bloggen kommer vi att ta en titt på stegen som du kan spåra till en snabbt automatiskt spåra raderad databas i SQL Server.
Viktig lösning: Står du inför problem med att återställa raderade databaskomponenter från SQL Server om ja, försök då SQL Repair Tool Software för att exportera borttaget databasobjekt live till SQL Server.
Det finns två unika tekniker genom vilka man utan större ansträngning kan spåra vem som tagit bort databasen i SQL Server. Den huvudsakliga tekniken är att använda den inbyggda Schema Changes History Report. Den efterföljande tekniken är att ladda SQL Server Default Trace i en tabell för att se vem som tagit bort databasen.
Metoder för att spåra borttagen databas i SQL Server
1. Spåra databas med SQL Server Schema Change History Report
- Öppna SQL Server Management Studio och anslut till SQL Server Instance.
- Högerklicka på SQL Server-instans och välj rapporter –> Standardrapporter –> Schemaändringshistorik.
- Sedan, Scheme Change History-rapport öppnas, vilket kommer att ha insikter om vem som tog bort SQL Server-databasen tillsammans med tiden då databasen togs bort.
2. Spåra databas med standardspårningsfiler
SQL Server Default Trace-filen ger exceptionellt användbar data till en DBA för att förstå vad som händer i SQL Server-instansen.
Utför frågan nedan för att spåra standardsökvägen för spårningsfilen i SQL Server.
VÄLJ
sökväg AS [Standardspårningsfil]
,max_size AS [Max File Size of Trace File]
,max_files AS [Max Antal spårningsfiler]
,start_time AS [Starttid]
,last_event_time AS [Last Event Time]
FRÅN sys.traces WHERE is_default =1
GO
Steg-för-steg-instruktioner för att ladda SQL Server-spårningsfil i SQL Server-tabell
Obs! Prova SQL Log Analyzer Software för att återställa databas från skadade LDF-filer.
Kör skriptet nedan för att ladda standardspårningsfilens innehåll i en tillfällig tabell för att läsa viktig information om vem som raderade klientdatabasen i SQL Server. Om du inte hittar viktiga data i den senaste spårningsfilen, är det föreskrivet att du laddar data från alla tillgängliga spårningsfiler på servern för att utforska data.
ANVÄND tempdb
GO
OM OBJECT_ID('dbo.TraceTable', 'U') INTE ÄR NULL
SLIPP TABELL dbo.TraceTable;
VÄLJ * INTO TraceTable
FRÅN ::fn_trace_gettable
(‘G:\Program Files\Microsoft SQL Server\MSSQL10_50.SQL2008R2\MSSQL\Log\log_12.trc’, standard)
GO
VÄLJ
Databas-ID
,Databasnamn
,LoginName
,Värdnamn
,Applikationsnamn
,Starttid
,CASE
NÄR EventClass =46 SEN "Databas skapad"
NÄR EventClass =47 DÅ "Databas släpps"
ANNAT "INGEN"
SLUT SOM EventType
FRÅN tempdb.dbo.TraceTable
WHERE DatabaseName =‘MyTechMantra’
OCH (EventClass =46 /* Event Class 46 refererar till Object:Created */
ELLER EventClass =47) /* Event Class 47 refererar till Object:Deleted */
GO
Avsluta
I den här bloggen har vi uppfattat hur effektivt man kan spåra en raderad databas i SQL Server med hjälp av en inbyggd SQL Server Schema Changes History Report eller genom att använda standardspårningsfiler. Dessutom, om dina databasfiler är skadade eller mycket skadade rekommenderar vi att du använder ett tredjepartsverktyg som SQL Recovery Software för att återställa databasfilerna.