Pomocí plánů údržby databáze můžeme automatizovat základní činnosti správy databáze. Plány údržby jsou balíčky služeb integrace SQL Server, které jsou spouštěny úlohou SQL Server Agent podle nakonfigurovaného plánu. Pomocí plánů údržby můžeme automatizovat následující úkoly.
- Zmenšit databázi
- Zálohujte databázi
- Oznámení operátora
- Aktualizujte statistiky databáze
- Proveďte kontrolu integrity databáze
- Provádění úloh SQL Server Agent
- Spustit skript T-SQL
- Reorganizujte nebo znovu vytvořte indexy
Kromě toho můžeme nastavit upozornění, které bude informovat DBA o stavu provádění plánu údržby povolením Database Mail.
V tomto článku vysvětlím, jak vytvořit základní plán údržby pro provádění kontroly konzistence databáze v databázi uživatelů.
Předpoklady pro vytvoření plánu údržby databáze
Chcete-li vytvořit plán údržby databáze, předpoklady jsou následující:
- Musí být nainstalovány integrační služby
- Musí být spuštěna služba SQL Server Agent Service.
Musí být spuštěny integrační služby
Jak jsem již zmínil, plány údržby databází jsou balíčky integračních služeb SQL Server, a proto je k jejich spuštění je třeba nainstalovat integrační služby.
Chcete-li ověřit, že byly nainstalovány integrační služby, otevřete Správce konfigurace serveru SQL , vyberte Služby SQL Server v levém panelu. Verzi integrační služby můžete zobrazit v horní části seznamu.
Pokud integrační služby nebyly nainstalovány, nainstalujte je pomocí instalačního programu SQL Server. Referenční informace naleznete v tomto článku.
Musí být spuštěna služba SQL Server Agent Service
Database Mail odesílá e-maily nebo zprávy pomocí služby SQL Server Agent Service. Pokud Agent Services neběží, SQL Server nemůže odesílat e-maily. Zatímco služba Agent není spuštěna, všechny zprávy budou zařazeny do fronty a po spuštění služby Agent budou doručeny všechny zprávy ve frontě.
Chcete-li ověřit stav služby agenta, spusťte v SQL Server Management Studio následující příkaz.
use master go EXEC xp_servicecontrol N'querystate',N'SQLAgent$CMS'
Výstup je následující:
Pokud služba SQL Server Agent Service neběží, musíme ji spustit. Chcete-li spustit službu SQL Server Agent Service, otevřete služby a přejděte na Ovládací panely , klikněte na Nástroje pro správu a poté klikněte na Služby . V seznamu služeb vyhledejte SQL Server Agent . Klikněte pravým tlačítkem na SQL Server Agent a vyberte Start .
Pokud chcete zasílat e-mailem stav plánu údržby, musíte povolit Databázovou poštu a lze to provést změnou konfiguračních parametrů instance databáze. Ve výchozím nastavení Databázová pošta funkce není povolena. Musí být povolena změnou konfigurační hodnoty Database Mail XPs.
Aktivace Databázové pošty , proveďte postupně následující dotazy.
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
Nastavení ukázky
Pro toto demo vytvořím plán údržby pro provedení kontroly konzistence databáze na FileStream_Demo databáze. Plán údržby se bude provádět každou neděli ve 12:00.
Verze serveru SQL :SQL Server 2017.
Software :SQL Server Management Studio.
Plán údržby databáze lze vytvořit buď pomocí Průvodce plánem údržby nebo pomocí návrhu povrchu plánu údržby. Nejprve vysvětlím, jak vytvořit plán údržby pomocí Průvodce plánem údržby .
Vytvořte plán údržby pomocí Průvodce plánem údržby
Pomocí Průvodce plánem údržby databáze můžeme vytvořit více plánů údržby . Průvodce má některé předdefinované úlohy údržby, které lze konfigurovat krok za krokem.
Chcete-li vytvořit plán údržby pomocí průvodce, otevřete SSMS, rozbalte Správa , klikněte pravým tlačítkem na Plán údržby a vyberte Průvodce plánem údržby.
Průvodce plánem údržby otevře se dialogové okno, kde můžete vidět řadu úloh, které lze provést pomocí průvodce. Můžete to ignorovat a kliknout na Další .
V dalším dialogu zadejte požadovaný název a popis plánu údržby. Zadejte uživatele nebo účet, který provádí plán údržby. Jak jsem již zmínil, pomocí průvodce můžete vytvořit více plánů údržby; tento dialog obsahuje možnost konfigurace plánu. Můžete provádět všechny úlohy současně, nebo můžete zadat jeden plán pro celý plán. Do pole Název zadejte požadovaný název a popis a Popis textová pole. SQL Server Agent spustí plán údržby, pokud účet služby SQL Server Agent je vybráno. Náš plán se bude provádět individuálně, proto vyberte Jeden plán pro celý plán nebo žádný plán .
Chcete-li nakonfigurovat plán, klikněte na Plán vedle tlačítka Změnit Textové pole. Nový rozvrh úloh otevře se dialogové okno. Do pole Název zadejte požadovaný název Textové pole. Plán údržby se bude spouštět týdně, proto vyberte Opakující se v Typ plánu rozevíracím seznamu. Jak již bylo zmíněno, plán údržby se spouští týdně, proto vyberte Týdně v rozevíracím poli a zaškrtněte Neděle. Úloha se provede ve 00:00, zadejte tedy 12:00:00 v odpovídajícím textovém poli. Klikněte na OK .
Jakmile je plán nakonfigurován, klikněte na Další na stránce Vybrat vlastnosti plánu dialog.
Na stránce Vyberte Úlohy údržby dialogovém okně vyberte Zkontrolovat integritu databáze zaškrtněte políčko a klikněte na Další .
Pokud bylo nakonfigurováno více úloh údržby, můžete si je objednat v Vybrat pořadí úloh údržby dialog. Je nakonfigurována pouze jedna úloha, pak zde není potřeba žádná akce. Klikněte na Další .
V dalším dialogu vyberte název databáze, kde se bude provádět úloha údržby. Vyberte FileStream_Demo databáze z Databází a klikněte na Další .
V dalším dialogu vyberte možnost protokolování. Stav provádění plánu údržby můžete zapsat do textového souboru nebo můžete odeslat e-mail s upozorněním. Vyberte požadovanou možnost a klikněte na Další .
V dalším dialogu si můžete prohlédnout souhrn úkolů provedených pro vytvoření plánu údržby. Zkontrolujte je a klikněte na Dokončit .
Po vytvoření plánu se zobrazí Průvodce plánem údržby dokončí úspěšně.
Vytvořte vlastní plán údržby pomocí plochy Návrhář plánu údržby
Jak jsem vysvětlil, Průvodce plánem údržby má některé předdefinované základní úkoly, které neposkytují více možností ovládání a přizpůsobení. Pokud například chcete před provedením jakékoli úlohy údržby spustit skript SQL, nelze to provést pomocí průvodce.
Chcete-li vytvořit vlastní plán údržby, otevřete SQL Server Management Studio, rozbalte Správa , klikněte pravým tlačítkem na Plány údržby a vyberte Nový plán údržby .
V dialogovém okně zadejte požadovaný název plánu údržby a klikněte na OK .
Návrhář plánu údržby otevře. Má dvě sekce. V první části můžete zadat název a popis plánu údržby. Můžete změnit vlastnosti stávajícího dílčího plánu nebo přidat dílčí plány do existujících plánů údržby.
Popis jednotlivých komponent:
Když vytvoříte nový plán údržby, SQL vytvoří výchozí podplán s názvem Podplán_1 . Můžeme upravit jeho vlastnosti. Chcete-li upravit výchozí dílčí plán, klikněte na Upravit vlastnosti dílčího plánu knoflík. Případně vyberte podplán ze zobrazení mřížky a poklepejte na něj. Vlastnosti podplánu otevře se dialogové okno. Zadejte požadovaný název dílčího plánu a klikněte na OK .
Jak jsem uvedl dříve, vytvoříme úlohu údržby, která provede kontrolu konzistence databáze. Přetáhněte Úloha kontroly integrity databáze z Plánu údržby nástrojů a přejděte do Návrháře plánu údržby povrch.
Dvakrát klikněte na Zkontrolovat úlohu integrity databáze . Úloha Kontrola integrity databáze otevře se dialogové okno.
V dialogovém okně vyberte připojení SQL Server z Připojení rozevíracím seznamu. Můžete také vytvořit nové připojení kliknutím na Nové knoflík. Když kliknete na Databáze V rozevíracím seznamu se otevře dialogové okno s více možnostmi. Kontroly konzistence můžete provádět na:
- Všechny databáze
- Pouze systémové databáze (master, msdb, model, TempDB)
- Databáze uživatelů
- Konkrétní databáze.
Můžete také ignorovat seznam databází, které jsou offline. Jak již bylo zmíněno, chceme provést kontrolu konzistence FileStream_Demo databáze. Vyberte FileStream_Demo z Těchto databází seznam a klikněte na OK .
Po dokončení úlohy kontroly integrity databáze naplánujte čas jejího provedení. Chcete-li to provést, klikněte na Kalendář na panelu nástrojů.
Případně můžete poklepáním na dílčí plán otevřít vlastnosti a kliknout na Kalendář vedle tlačítka Plán textové pole.
Nový rozvrh úloh otevře se dialogové okno. Jak již bylo zmíněno, úloha se musí provést každou neděli ve 12:00, proto vytvořte plán odpovídajícím způsobem. V části Jméno textového pole, zadejte požadovaný název úlohy, vyberte požadovaný typ plánu. V části Frekvence vyberte Týdně v části Vyskytuje se Textové pole. Úloha se bude provádět jednou týdně, proto vyberte 1 v Opakuje se každých Textové pole. Níže vyberte Neděle . V části Denní frekvence v části Vyskytuje se jednou v zadejte čas Textové pole. Úloha bude provedena ve 12:00, zadejte do ní tedy 00:00. A nakonec vyberte datum zahájení úlohy a klikněte na OK .
Jakmile je rozvrh vytvořen, můžete jeho souhrn vidět v Rozvrhu sloupec zobrazení mřížky dílčího plánu.
Jakmile je plán údržby vytvořen, uložte jej. Plán údržby si můžete prohlédnout v Plánu údržby adresář pod Správou .
Služba SQL Server Agent Service provede plán údržby; proto je plán plánu údržby uveden v části Job adresář. Chcete-li jej zobrazit, otevřete SSMS, rozbalte SQL Server Agent a rozbalte Úlohy .
Plán údržby můžete provést ručně. Chcete-li to provést, klikněte pravým tlačítkem na Plán údržby a klikněte na Provést .
Plán údržby je úspěšně dokončen. Přehled můžete zobrazit kliknutím na tlačítko Přehled a výběrem Zobrazit zprávu možnost.
Existující úlohu údržby můžete také přesunout na jiný server tak, že ji exportujete do systému souborů a ručně nasadíte na jiný server. Jak jsem již zmínil, plány údržby databáze jsou balíčky integračních služeb uložené v databázi MSDB. Chcete-li exportovat plány údržby do systému souborů, připojte se k integračním službám pomocí SQL Server Management Studio, rozbalte Uložené balíčky uzel a rozbalte Plány údržby , klikněte pravým tlačítkem na plán údržby s názvem Úloha kontroly konzistence databáze a vyberte Exportovat balíček .
Exportní balíček otevře se dialogové okno. V Umístění balíčku v rozevíracím seznamu vyberte Systém souborů . V Cesta k balíčku do textového pole zadejte umístění, kam se má plán údržby uložit, a klikněte na OK.
Plán údržby bude exportován do požadovaného umístění.
Shrnutí
V tomto článku jsem vysvětlil:
- Co jsou plány údržby;
- Předpoklady pro vytvoření plánů údržby;
- jak vytvářet přizpůsobené plány údržby;
- Jak vytvořit plán údržby pomocí průvodce;
- Jak exportovat plán údržby do systému souborů.
Užitečný nástroj:
dbForge Studio pro SQL Server – výkonné IDE pro správu, administraci, vývoj, reportování a analýzu SQL Serveru.