sql >> Database >  >> RDS >> Sqlserver

Manieren om verwijderde database bij te houden in SQL Server

In de geschiedenis van schemawijzigingen van SQL Server kunnen we de naam herkennen van databases die uit de SQL Server zijn verwijderd. In een grote SQL Server-omgeving is het een uiterst lastige taak om met elke Schemawijzigingsgeschiedenis van elke SQL Server-case te communiceren. In deze blog zullen we een blik werpen op de stappen die u kunt herleiden tot een snel auto-track verwijderde database in SQL Server.

Belangrijke oplossing: Ondervindt u problemen bij het herstellen van verwijderde databasecomponenten van SQL Server, zo ja, probeer dan SQL Repair Tool Software om verwijderde database-objecten live naar SQL Server te exporteren.

Er zijn twee unieke technieken waarmee men zonder veel moeite kan nagaan wie de database in SQL Server heeft verwijderd. De belangrijkste techniek is het gebruik van het ingebouwde Schema Changes History Report. De volgende techniek is om de SQL Server Default Trace in een tabel te laden om te zien wie de database heeft verwijderd.

Methoden om Verwijderde database bij te houden in SQL Server

1. Database bijhouden met behulp van SQL Server Schema Wijzigingsgeschiedenis Rapport

  1. Open SQL Server Management Studio en maak verbinding met de SQL Server-instantie.
  2. Klik met de rechtermuisknop op SQL Server-instantie en selecteer Rapporten –> Standaardrapporten –> Geschiedenis van schemawijzigingen.
  3. Vervolgens Rapport Geschiedenis van schemawijzigingen wordt geopend, die inzicht geeft in wie de SQL Server-database heeft verwijderd, samen met het tijdstip waarop de database is verwijderd.

2. Database bijhouden met standaard traceerbestanden

Het SQL Server Default Trace-bestand geeft uitzonderlijk nuttige gegevens aan een DBA om te begrijpen wat er aan de hand is met het SQL Server-exemplaar.

Voer de onderstaande query uit om het standaardpad van het traceerbestand in SQL Server te traceren.

SELECTEER

           pad AS [Standaard traceerbestand]

          ,max_size AS [Max. bestandsgrootte van traceerbestand]

          ,max_files AS [Max. aantal traceerbestanden]

          ,start_time AS [Begintijd]

          ,last_event_time AS [Last Event Time]

VAN sys.traces WHERE is_default =1

GA

Stap voor stap instructies om het SQL Server-traceringsbestand in de SQL Server-tabel te laden

Opmerking: Probeer SQL Log Analyzer-software om de database te herstellen van beschadigde LDF-bestanden.

Voer het onderstaande script uit om de inhoud van het standaardtraceerbestand in een tijdelijke tabel te laden om de belangrijke gegevens te lezen over wie de clientdatabase in SQL Server heeft verwijderd. Als u de significante gegevens niet in het meest recente traceringsbestand vindt, is het op dat moment voorgeschreven om de gegevens van alle toegankelijke traceringsbestanden op de server te laden om de gegevens te verkennen.

GEBRUIK tempdb

GA

IF OBJECT_ID(‘dbo.TraceTable’, ‘U’) IS NIET NULL

          DROP TABLE dbo.TraceTable;

SELECTEER * IN TraceTable

VAN ::fn_trace_gettable

(‘G:\Program Files\Microsoft SQL Server\MSSQL10_50.SQL2008R2\MSSQL\Log\log_12.trc', standaard)

GA

SELECTEER

           DatabaseID

          ,Databasenaam

          ,Inlognaam

          ,HostName

          ,Applicatienaam

          ,StartTime

          ,CASE

                   WANNEER EventClass =46 DAN 'Database gemaakt'

                   WHEN EventClass =47 THEN ‘Database Dropped’

          ANDERS 'GEEN'

          END AS EventType

VAN tempdb.dbo.TraceTable

          WHERE DatabaseName ='MyTechMantra'

                   AND (EventClass =46 /* Event Class 46 verwijst naar Object:Created */

                             OF EventClass =47) /* Event Class 47 verwijst naar Object:Deleted */

GA

  

Afronden

In deze blog hebben we gezien hoe effectief men een verwijderde database in SQL Server kan volgen met behulp van een ingebouwd SQL Server Schema Changes History Report of door gebruik te maken van standaard traceerbestanden. Bovendien, als uw databasebestanden beschadigd of zeer beschadigd zijn, raden we u aan om een ​​hulpprogramma van derden te gebruiken, zoals SQL Recovery Software, om de databasebestanden te herstellen.


  1. Voer native sql uit met hibernate

  2. Hoe SQL-variabelen in PHP te binden?

  3. Meerdere max()-waarden selecteren met een enkele SQL-instructie

  4. Hoe de MID()-functie werkt in MySQL