MSSQL backups - Kan ik een script schrijven om te controleren of het DB is aangepast voordat een back-up?

stemmen
2

De vraag is in de titel echt, ik wil weten of ik kan controleren of de DB is helemaal gewijzigd sinds de laatste back-up, zoals mijn bedrijf de gegevens zeer sporadisch veranderen en we eindigen met veel backups allemaal precies hetzelfde.

De vraag is gesteld op 26/11/2012 om 17:29
bron van user
In andere talen...                            


2 antwoorden

stemmen
2

Je kon de laatste wijziging aan een index te ondervragen. Dit geldt ook voor wijzigingen in tabellen, omdat tafels als een bijzondere vorm van index (geclusterde of hoop) worden opgeslagen:

select  max(last_user_update)
from    sys.dm_db_index_usage_stats ius
join    sys.databases db
on      ius.database_id = db.database_id
where   db.name = 'YourDbName'

Deze statistieken worden gereset na een server herstart. U kunt de server herstart tijd met zoeken:

select  create_date
from    sys.databases
where   database_id = 2 -- tempdb
antwoordde op 26/11/2012 om 17:35
bron van user

stemmen
0

De makkelijkste manier is om bij te houden van dit feit in uw schema met behulp van een "Laatst aangepast" veld te houden. U kunt een "globale" waarde (die nuttig zijn in uw geval zou zijn waar niets kunnen zijn veranderd, maar als er iets is moet je een back-up), en / of een kolom in elke tabel. U kunt dit veld te beheren met triggers, zodat geen van uw apps moeten zorgen dat het veld bestaat, maar je kon valse positieven met dit krijgen als uw apps ooit updates uit te voeren om records zonder daadwerkelijk veranderen van de data.

Dan is het simpel; het opzetten van de back-up als een geplande taak, stoelt op een query controleren van enige en alle "Laatst aangepast" velden om te zien of ze zijn nieuwer dan de laatste back-up datum (die je ook ergens in uw schema voor een snelle verwijzing kan zetten).

antwoordde op 26/11/2012 om 17:37
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more