december 19, 2021

SQL Server DBA Diaries

utföra databasbackups är en av de mest utförda uppgifterna av någon DBA. De flesta gånger underhållsfönstret som DBA-teamet får utföra databasunderhållsaktiviteter är vanligtvis mindre. Oftare det inte, databasunderhållsuppgifterna går utöver det angivna fönstret och Applikationsteamet börjar klaga på detta.

även i vår miljö kommer vanligtvis Applikationsteamet tillbaka till att säga ”våra kritiska jobb är på väg att starta de närmaste minuterna. Vi ser att en databas backup process utnyttjar de flesta av resurserna. Eftersom det kan påverka våra jobb, kan du snälla döda det?”

för dem är det backup jobb som körs varje dag. Men bara DBA skulle veta hur dyrbar en databas backup är. Jag minns inte hur många gånger den extra säkerhetskopian hjälpte mig ur tuffa situationer eller gav mig förtroendet att gå vidare med något riskabelt förslag.

när någon frågar hur länge kommer det säkerhetskopieringsjobbet att köras eller hur mycket arbete det redan har gjort, var det bästa alternativet i SQL Server 2000 att kontrollera utmatningen som ges av statistikparametern i Säkerhetskopieringsskriptet. Men om någon glömde att inkludera statistikparametern i säkerhetskopieringsskriptet, finns det inget sätt att kontrollera säkerhetskopieringsstatus i SQL Server 2000.

men med SQL Server 2005 har detta beteende ändrats. En av de många underbara DMV: er som ska ingå i SQL Server 2005 är sys.dm_exec_requests. med denna DMV status, procent färdigställd etc. av säkerhetskopieringsprocessen (för den delen något SQL-kommando) kan enkelt spåras. Här är manuset som gör exakt samma sak.

SELECT A.NAME,B.TOTAL_ELAPSED_TIME/60000 AS ,B.ESTIMATED_COMPLETION_TIME/60000 AS ,B.PERCENT_COMPLETE as ,(SELECT TEXT FROM sys.dm_exec_sql_text(B.SQL_HANDLE))AS COMMAND FROM MASTER..SYSDATABASES A, sys.dm_exec_requests BWHERE A.DBID=B.DATABASE_ID AND B.COMMAND LIKE '%BACKUP%' order by percent_complete desc,B.TOTAL_ELAPSED_TIME/60000 desc

jag vet att de flesta av oss redan använder någon eller den andra versionen av det här skriptet under mycket lång tid nu. Eftersom det här skriptet nyligen hjälpte David Rummel att spåra säkerhetskopian av en stor databas, trodde det att det kunde hjälpa någon annan någonstans.

Lämna ett svar

Din e-postadress kommer inte publiceras.