Med hjälp av databasunderhållsplaner kan vi automatisera grundläggande databasadministration. Underhållsplaner är SQL Server-integreringstjänstpaket som exekveras av SQL Server Agent-jobb enligt konfigurerat schema. Med hjälp av underhållsplaner kan vi automatisera följande uppgifter.
- Förminska en databas
- Säkerhetskopiera en databas
- Operatörsmeddelande
- Uppdatera databasstatistik
- Utför databasintegritetskontroll
- Kör SQL Server Agent-jobb
- Kör T-SQL-skript
- Omorganisera eller bygga om index
Dessutom kan vi ställa in en varning för att meddela en DBA om status för genomförandet av underhållsplanen genom att aktivera Databas Mail.
I den här artikeln kommer jag att förklara hur man skapar en grundläggande underhållsplan för att utföra databaskonsistenskontroll på en användardatabas.
Förutsättningar för att skapa en databasunderhållsplan
För att skapa en databasunderhållsplan krävs följande:
- Integrationstjänster måste installeras
- SQL Server Agent Service måste köras.
Integrationstjänster måste köras
Som jag nämnde är databasunderhållsplaner SQL Server-integreringstjänstpaket, därför måste integrationstjänster installeras för att kunna exekvera dem.
För att verifiera att integrationstjänsterna har installerats, öppna SQL Server Configuration Manager , välj SQL Server Services i den vänstra rutan. Du kan se versionen av integrationstjänsten överst på listan.
Om integreringstjänsterna inte var installerade installerar du dem med installationsprogrammet för SQL Server. Se den här artikeln för referens.
SQL Server Agent Service måste köras
Databas Mail skickar e-post eller meddelanden med hjälp av SQL Server Agent Service. Om agenttjänsterna inte körs kan SQL Server inte skicka e-post. Medan agenttjänsten inte körs kommer alla meddelanden att ställas i kö, och när agenttjänsten startar kommer alla meddelanden i kö att levereras.
För att verifiera agenttjänstens status, kör följande kommando i SQL Server Management Studio.
use master go EXEC xp_servicecontrol N'querystate',N'SQLAgent$CMS'
Utgången är som följer:
Om SQL Server Agent Service inte körs måste vi starta den. För att starta SQL Server Agent Service, öppna tjänster, gå till Kontrollpanelen klickar du på Administrationsverktyg och klicka sedan påTjänster . Sök efter SQL Server Agent i listan över tjänster . Högerklicka på SQL Server Agent och välj Start .
Om du vill skicka statusen för underhållsplanen via e-post måste du aktivera Databasmail och det kan göras genom att ändra databasinstansens konfigurationsparametrar. Som standard är Databasmail funktionen är inte aktiverad. Det måste aktiveras genom att ändra konfigurationsvärdet för Database Mail XPs.
För att aktivera Database-post , kör följande frågor i följd.
USE master Go EXEC sp_configure 'show advanced options', 1 --Enable advance option Go RECONFIGURE Go EXEC sp_configure 'Database Mail XPs,' 1 --Enable database Mail option Go RECONFIGURE Go EXEC sp_configure 'show advanced options', 0 --Disabled advanced option Go RECONFIGURE Go
Demoinställningar
För den här demon kommer jag att skapa en underhållsplan för att utföra databaskonsistenskontroll på FileStream_Demo databas. Underhållsplanen kommer att genomföras varje söndag kl. 12.00.
SQL-serverversion :SQL Server 2017.
Programvara :SQL Server Management Studio.
En databasunderhållsplan kan skapas antingen med Maintenance Plan Wizard eller med hjälp av underhållsplanens designyta. Först kommer jag att förklara hur man skapar underhållsplanen med hjälp av Guiden Underhållsplan .
Skapa en underhållsplan med hjälp av Maintenance Plan Wizard
Vi kan skapa flera underhållsplaner med hjälp av Guiden för databasunderhållsplan . Guiden har några fördefinierade underhållsuppgifter som kan konfigureras steg för steg.
För att skapa en underhållsplan med hjälp av guiden, öppna SSMS, expandera Management högerklicka på Underhållsplan och välj Maintenance Plan Wizard.
Guiden Underhållsplan dialogrutan öppnas, där du kan se en sammanfattning av uppgifter som kan utföras med hjälp av guiden. Du kan ignorera det och klicka på Nästa .
I nästa dialogruta anger du önskat namn och beskrivning av underhållsplanen. Ange användaren eller kontot som utför underhållsplanen. Som jag nämnde kan du skapa flera underhållsplaner med hjälp av guiden; den här dialogrutan innehåller ett alternativ för att konfigurera schemat. Du kan utföra alla uppgifter samtidigt, eller så kan du ange ett enda schema för hela planen. Ange önskat namn och beskrivning i Namn och Beskrivning textrutor. SQL Server Agent kör underhållsplanen om SQL Server Agent-tjänstkonto är vald. Vår plan kommer att köras individuellt, välj därför Enstaka schema för hela planen eller inget schema .
För att konfigurera schemat, klicka på Schema knappen bredvid Ändra textruta. Nytt jobbschema dialogrutan öppnas. Ange önskat namn i Namn textruta. Underhållsplanen kommer att köras varje vecka, välj därför Återkommande i Schematyp rullgardinsmenyn. Som nämnts körs underhållsplanen varje vecka, välj därför Veckovis i rullgardinsmenyn och markera Söndag. Uppgiften körs klockan 12:00, skriv därför 12:00:00 i motsvarande textruta. Klicka på OK .
När schemat är konfigurerat klickar du på Nästa på Välj planegenskaper dialog.
På Välj underhållsuppgifter i dialogrutan Kontrollera databasintegritet kryssrutan och klicka på Nästa .
Om flera underhållsuppgifter har konfigurerats kan du beställa dem i Välj beställning av underhållsuppgift dialog. Endast en uppgift är konfigurerad, sedan behövs ingen åtgärd här. Klicka på Nästa .
I nästa dialogruta väljer du namnet på databasen där underhållsuppgiften ska utföras. Välj FileStream_Demo databas från databaserna rullgardinsmenyn och klicka på Nästa .
I nästa dialogruta väljer du loggningsalternativet. Du kan skriva status för genomförandet av underhållsplanen till en textfil, eller så kan du skicka ett varningsmail. Välj önskat alternativ och klicka på Nästa .
I nästa dialogruta kan du se en sammanfattning av uppgifter som utförts för att skapa underhållsplanen. Granska dem och klicka på Slutför .
När planen har skapats, Guiden Underhållsplan slutförs framgångsrikt.
Skapa en anpassad underhållsplan med hjälp av Maintenance Plan Designer-ytan
Som jag förklarade, Guiden Underhållsplan har några fördefinierade grundläggande uppgifter som inte ger mer kontroll och anpassningsmöjligheter. Om du till exempel vill köra ett SQL-skript innan du utför någon underhållsuppgift, kan det inte utföras med hjälp av guiden.
För att skapa en anpassad underhållsplan, öppna SQL Server Management Studio, expandera Management högerklicka på Underhållsplaner och välj Ny underhållsplan .
Ange önskat namn på underhållsplanen i dialogrutan och klicka på OK .
Underhållsplandesignern öppnas. Den har två sektioner. I det första avsnittet kan du ange namn och beskrivning av underhållsplanen. Du kan ändra egenskaperna för den befintliga underplanen eller lägga till underplanerna till de befintliga underhållsplanerna.
Beskrivningen av enskilda komponenter:
När du skapar en ny underhållsplan skapar SQL en standardunderplan med namnet Subplan_1 . Vi kan redigera egenskaperna för den. För att redigera standardunderplanen klickar du på Redigera underplansegenskaper knapp. Alternativt kan du välja underplanen från rutnätsvyn och dubbelklicka på den. Underplansegenskaper dialogrutan öppnas. Ange önskat namn på underplanen och klicka på OK .
Som jag nämnde tidigare kommer vi att skapa ett underhållsjobb för att utföra databaskonsistenskontrollen. Dra Kontrollera databasintegritetsuppgift från Underhållsplanen verktygslådan och släpp till Underhållsplandesignern yta.
Dubbelklicka på Kontrollera databasintegritetsuppgift . Uppgiften Kontrollera databasintegritet dialogrutan öppnas.
I dialogrutan väljer du SQL Server-anslutningen från Anslutning rullgardinsmenyn. Du kan också skapa en ny anslutning genom att klicka på Ny knapp. När du klickar på Databas(er) rullgardinsmenyn öppnas en dialogruta med flera alternativ. Du kan utföra konsekvenskontroller på:
- Alla databaser
- Endast systemdatabaser (master, msdb, model, TempDB)
- Användardatabaser
- Särskilda databaser.
Du kan också ignorera listan över databaser som är offline. Som nämnts vill vi utföra en konsekvenskontroll på FileStream_Demo databas. Välj FileStream_Demo från Dessa databaser lista och klicka på OK .
När uppgiften att kontrollera databasens integritet är klar, schemalägg tid för dess körning. För att göra det klickar du på Kalendern knappen i verktygsfältet.
Alternativt kan du dubbelklicka på underplanen för att öppna egenskaper och klicka på Kalender knappen bredvid Schema textruta.
Nytt jobbschema dialogrutan öppnas. Som nämnts måste jobbet utföras varje söndag klockan 12:00, skapa därför schemat i enlighet med detta. I Namn textrutan, ange önskat namn på jobbet, välj önskad schematyp. I Frekvens väljer du Veckovis i Förekommer textruta. Jobbet kommer att köras en gång i veckan, välj därför 1 i Återkommande varje textruta. Välj Söndag nedan . I Daglig frekvens anger du tiden i avsnittet Förekommer en gång på textruta. Jobbet kommer att utföras klockan 12:00, skriv därför in 12:00:00 i det. Och slutligen, välj startdatum för jobbet och klicka på OK .
När schemat har skapats kan du se sammanfattningen av schemat i Schema kolumn i delplansrutnätsvyn.
När underhållsplanen har skapats, spara den. Du kan se underhållsplanen i Underhållsplanen katalogen under Management .
SQL Server Agent Service utför underhållsplanen; därför listas schemat för underhållsplanen under Jobb katalog. För att se den, Öppna SSMS, expandera SQL Server Agent och expandera Jobb .
Du kan utföra underhållsplanen manuellt. För att göra det högerklickar du på Underhållsplanen och klicka på Kör .
Underhållsplanen slutförs framgångsrikt. Du kan se rapporten genom att klicka på Rapportera och välj Visa rapport alternativ.
Du kan också flytta den befintliga underhållsuppgiften till en annan server genom att exportera den till filsystemet och distribuera manuellt på en annan server. Som jag nämnde är databasunderhållsplaner integrationstjänstpaket som lagras i MSDB-databasen. För att exportera underhållsplaner till filsystemet, anslut till integrationstjänster med SQL Server Management Studio, expandera Lagrade paket nod och expandera sedan Underhållsplaner högerklickar du på underhållsplanen som heter Databaskonsistenskontrolljobb och välj Exportera paket .
Exportpaketet dialogrutan öppnas. I Paketplats rullgardinsmenyn, välj Filsystem . I Paketsökväg textrutan, ange platsen där underhållsplanen ska sparas och klicka på OK.
Underhållsplanen kommer att exporteras till önskad plats.
Sammanfattning
I den här artikeln har jag förklarat:
- Vad är underhållsplaner?
- Förutsättningar för att skapa underhållsplaner;
- Hur man skapar anpassade underhållsplaner;
- Hur man skapar en underhållsplan med hjälp av guiden;
- Hur man exporterar en underhållsplan till filsystemet.
Användbart verktyg:
dbForge Studio för SQL Server – kraftfull IDE för SQL Server-hantering, administration, utveckling, datarapportering och analys.