Nella cronologia delle modifiche allo schema di SQL Server possiamo riconoscere il nome dei database che sono stati eliminati da SQL Server. In un grande ambiente SQL Server, l'interfaccia con ogni cronologia delle modifiche allo schema di ogni caso di SQL Server è un'attività estremamente problematica. In questo blog, daremo un'occhiata ai passaggi che puoi rintracciare in un database eliminato rapidamente automaticamente in SQL Server.
Soluzione importante: Stai riscontrando problemi nel ripristino dei componenti del database eliminati da SQL Server, se sì, prova il software SQL Repair Tool per esportare l'oggetto del database eliminato in tempo reale su SQL Server.
Esistono due tecniche uniche con cui è possibile monitorare senza molto sforzo chi ha eliminato il database in SQL Server. La tecnica principale consiste nell'usare il rapporto sulla cronologia delle modifiche allo schema integrato. La tecnica successiva consiste nel caricare la traccia predefinita di SQL Server in una tabella per vedere chi ha eliminato il database.
Metodi per Tracciare il database eliminato in SQL Server
- Apri SQL Server Management Studio e connettiti all'istanza di SQL Server.
- Fai clic con il pulsante destro del mouse su Istanza di SQL Server e seleziona Report –> Report standard –> Cronologia modifiche schema.
- Quindi, Rapporto Cronologia modifiche schema si aprirà, che conterrà gli approfondimenti su chi ha eliminato il database di SQL Server insieme all'ora in cui il database è stato eliminato.
2.Traccia il database utilizzando i file di traccia predefiniti
Il file di traccia predefinito di SQL Server fornisce dati eccezionalmente utili a un DBA per comprendere cosa sta succedendo nell'istanza di SQL Server.
Eseguire la query seguente per tracciare il percorso predefinito del file di traccia in SQL Server.
SELEZIONA
percorso AS [File di traccia predefinito]
,max_size AS [Max File Size of Trace File]
,max_files AS [Numero massimo di file di traccia]
,start_time AS [ora di inizio]
,last_event_time COME [Ora dell'ultimo evento]
DA sys.traces DOVE is_default =1
Vai
Istruzioni dettagliate per caricare il file di traccia di SQL Server nella tabella di SQL Server
Nota: Prova il software SQL Log Analyzer per recuperare il database da file LDF danneggiati.
Eseguire lo script sottostante per caricare il contenuto del file di traccia predefinito in una tabella transitoria per leggere i dati significativi relativi a chi ha eliminato il database client in SQL Server. Se non trovi i dati significativi nel file di traccia più recente, a quel punto è prescritto caricare i dati da tutti i file di traccia accessibili sul server per esplorare i dati.
UTILIZZA tempdb
Vai
IF OBJECT_ID('dbo.TraceTable', 'U') NON È NULL
DROP TABLE dbo.TraceTable;
SELEZIONA * IN TraceTable
DA ::fn_trace_gettable
('G:\Programmi\Microsoft SQL Server\MSSQL10_50.SQL2008R2\MSSQL\Log\log_12.trc', impostazione predefinita)
Vai
SELEZIONA
ID database
,Nome database
,LoginName
,Nome host
,ApplicationName
,StartTime
,CASE
QUANDO EventClass =46 ALLORA "Database creato"
QUANDO EventClass =47 ALLORA "Database eliminato"
ALTRO "NESSUNO"
END AS EventType
DA tempdb.dbo.TraceTable
WHERE DatabaseName ="MyTechMantra"
AND (EventClass =46 /* Event Class 46 si riferisce a Object:Created */
O EventClass =47) /* Event Class 47 si riferisce a Object:Deleted */
Vai
Concludi
In questo blog, abbiamo percepito l'efficacia con cui è possibile tenere traccia di un database eliminato in SQL Server con l'assistenza di un report sulla cronologia delle modifiche allo schema di SQL Server integrato o utilizzando i file di traccia predefiniti. Inoltre, se i tuoi file di database sono danneggiati o molto danneggiati, per recuperare i file di database, ti consigliamo di utilizzare uno strumento di terze parti come SQL Recovery Sofware.