Maintenance Plans zupełnie znienacka
O MNIE LINIJEK KILKA
• Lider Polskiej Grupy Użytkowników SQL Server
• Microsoft Certified Trainer
• MCP, MCSA, MLSS, MLSBS, MCTS, MCITP, MCT
• SQL Server MVP (od 2010 roku)
• Współtwórca PASS SQL Azure Virtual Chapter
• Blogger, Influencer, Technical Writer
• Od ponad 7 lat w Data Center we Wrocławiu
• Ponad 12 lat w sektorze bankowym i informatycznym
• GITCA Technical Lead & Vice-Chair EMEA Board
• Freelancer: Trainer, Auditor, Consultant
• Prelegent na konferencjach SQL Server Community Launch, Time
  for SharePoint, CodeCamps, SharePoint Community Launch, CISSP
  Day, InfoTRAMS, SQL Bits, SQL Saturday, CareerCon
• Współautor Deep Dives:
          High availability of SQL Server in the context
          of Service Level Agreements (Chapter 18th)
• Umoczone palce w:
          Exploring MDX using Microsoft SQL Server 2012
AGENDA
Plany Konserwacji – ale o co chodzi?
Plany Konserwacji – jak, gdzie i kiedy?
• Narzędzia, metody, sposoby
Możliwości Planów Konserwacji
• Back Up Database
• Verify Integrity of Database
• Maintain a Database Indexes
• Maintain Index & Column Statistics
• Remove Older Data from msdb
• Remove Old Backups
Kilka przykładów
Podsumowanie
Plany Konserwacji – ale o co chodzi?
PLANY KONSERWACJI – ALE O CO CHODZI?


•   Porządek
•   Spokój
•   Znajomość środowiska
•   Wydajność

DEFINICJA:
         A database maintenance plan is a set of specific, proactive task that need to be
         performer regularly on databases to ensure ttheir adequate performance and
         availability
Plany Konserwacji – jak, gdzie i kiedy?
PLANY KONSERWACJI – JAK, GDZIE, KIEDY?


JAK:
• Maintenance Plan Wizard
• Maintenance Plan Designer
• T-SQL Scripts
• PowerShell Scripts

GDZIE:
• SSMS od wersji Standard wzwyż
• do zobaczenie… Express’ie

KIEDY:
• Przed wystąpieniem problemów
• W trakcie okienka serwisowego
• Poza praca klientów
PLANY KONSERWACJI – MAINTENANCE PLAN WIZARD


• Prosty podstawowy kreator, pozwalający na stworzenie najważniejszych zadań w kilku
  krokach.
• W wielu wypadkach w zupełności wystarczający
• Posiadający limitowana, aczkolwiek całkiem pokaźna ilość opcji.
• Ograniczenia:
  •   Limitowana ilość baz danych , które możemy obsłużyć
  •   Ograniczona granularność
  •   Pojedyncze zadania – brak multi-taskingu
  •   Brak możliwości oskryptowania innych instancji
  •   Pewna ilość błędów we wcześniejszych wersjach SQL Server
      o SQL Server 2005 Service Pack 2
      o SQL Server 2008
PLANY KONSERWACJI – MAINTENANCE PLAN DESIGNER


• Bardziej rozbudowane narzędzie korzystające z możliwości jakie daje interfejs graficzny
  obsługujący metodę „przeciągnij i upuść” wykorzystywaną w SSIS
• Używany przez „prawdziwych DBA”
• Zwiększone możliwości
   • Kontrola przepływu zdarzeń przy użyciu planu wykonania
   • Wsparcie dla wielu zadań – multi-tasking
   • Dwa dodatkowe Plany Konserwacji (niedostępne w Maintenance Wizard):
     o Execute T-SQL Statement
     o Notify Operator
PLANY KONSERWACJI – MAINTENANCE PLAN WIZARD & DESIGNER


• Ograniczenia obu narzędzi:
  •   Identyfikacja i usunięcie fragmentacji z plików fizycznych
  •   Identyfikacja zagubionych, zduplikowanych lub nieużywanych indeksów
  •   Zapewnienie dostępności kopii zapasowej na żądanie
  •   Weryfikacja dobrej jakości kopii zapasowej i jej prawidłowego odtworzenia
  •   Monitorowanie wydajności
  •   Monitorowanie błędów SQL Server
  •   Monitorowanie błędów OS
  •   Monitorowanie zajętej/wolnej przestrzeni
PLANY KONSERWACJI – T-SQL SCRIPTS & POWERSHELL SCRIPTS


• Funkcjonalności dla „naprawdę prawdziwych DBA”
• Niezbędne podczas zarządzania wieloma bazami, instancjami, farmami serwerów
• Przykładowo dla skryptów T-SQL dostajemy do wykorzystania:
  • Dostęp do systemu OS
  • Przenoszalność / Przenośność ?
  • Współdzielenie skryptów


Jeden z najlepszych przykładów:
          HTTP://OLA.HALLENGREN.COM/
Możliwości Planów Konserwacji
PLANY KONSERWACJI – DOSTĘPNE ZADANIA (SSMS)

• Check Database Integrity
  • DBCC CHECKDB
• Shrink Database
  • NEVER, NEVER, NEVER
• Reorganize Index
  • ALTER INDEX , a następnie Update Statistics
• Rebuild Index
  • ALTER INDEX, Update Statistics nie jest potrzebne
• Update Statistics
  • Sp_updatestats
• History Cleanup
  • Używane na bazie msdb, nie jest zalecane zbyt częste użycie
• Execute SQL Server Sgent Job
  • Pozwala na uzycie skryptów przy pracy z agentem
• Back Up Database (Full)
  • Wykonuje BACKUP DATABASE z opcją FULL, następnie TL
• Back Up Database (Differential)
  • Wykonuje BACKUP DATABASE z opcją DIFFERENTIAL
• Back Up Database (Transaction Log)
  • Wykonuje BACKUP LOG, częstotliwość…
• Maintenance Cleanup Task
  • Najbardziej skomplikowany aspekt funkcjonalności ? BAK, TRN, TXT
MOŻLIWOŚCI – VERIFY INTEGRITY OF DATABASE


WARTO PAMIĘTAĆ

• Regularność DBCC CHECKDB
  • Dziennie
  • Tygodniowo
  • Miesięcznie?
• DBCC CHECKDB (’database_name’) WITH NO_INFOMSGS
• DBCC CHECKDB (’database_name’) WITH NO_INFOMSGS, ALL_ERRORMSGS
• DBCC CHECKDB (’database_name’, NOINDEX)
MOŻLIWOŚCI – SHRINK DATABASE


WARTO PAMIĘTAĆ

NIGDY NIE UŻYWAJMY TEJ OPCJI (w Planach Konserwacji)

•   MDF & LDF
•   100 GB Zarezerwowane
•   15 GB w użyciu
•   DBCC SHRINKDATABASE lub DBCC SHRINKFILE | MANUAL MODE

• Redukcja Zarezerwowanego Miejsca
MOŻLIWOŚCI – MAINTAIN INDEX & COLUMN STATISTICS


WARTO PAMIĘTAĆ

Automatyka:
•   AUTO_CREATE_STATISTICS
•   AUTO_UPDATE_STATISTICS
•   Funkcjonuje automatycznie po użyciu: INSERT, UPDATE, DELETE
•   UPDATE STATISTICS table_name WUTH FULLSCAN


Kiedy używać:
• Nigdy…
• od razu po Index Reorganization
• W dniach kiedy nie używamy Index Rebuild albo Reorganize Index

Ważne opcje (UPDATE STATISTICS):
• All existing statistics
• Column statistics only
• Index statistics only
MOŻLIWOŚCI – REORGANIZE VS REBUILD
MOŻLIWOŚCI – HISTORY CLEAN UP (MSDB)


Wybieramy dane historyczne do usunięcia:
  • Backup and restore history
  • SQL Server Agent job history
  • Maintenance Plan history
Podsumowanie
• Praca organiczna, praca u podstaw
• Należy zastanowić się nad:
    • Kolejnością zadań
    • Długością zadań
    • Ważnością zadań
•   Dokumentowanie
•   Używanie na co dzień / co tydzień / okazjonalnie
•   Lepsze poznanie własnego środowiska
•   Podgląd jego wydajności
•   NIESTETY: Standard, Enterprise i/lub wyższe
•   Maintenance Plan Wizard – na początek i przy małych instalacjach
•   Maintenance Plan Designer – dojrzałe i bardziej rozbudowane
KONTAKT
•   MAIL: KoprowskiT@windowslive.com
•   MSG: KoprowskiT@windowslive.com
•   SKYPE: tjkoprowski
•   TWITTER/FACEBOOK/LINKEDIN: KoprowskiT

    BLOGS:
    ITPRO Anorak’s Vision: http://itblogs.pl/notbeautifulanymore/ [PL/EN]
    Volume Licensing Specialites: http://koprowskit.eu/licensing/ [PL]
    My MVP Blog: http://koprowskit.eu/geek/ [PL/EN/ES]
DZIĘKUJĘ
ZA UWAGĘ

Maintenance_Plans_Zupełnie_Znienacka

  • 1.
  • 2.
    O MNIE LINIJEKKILKA • Lider Polskiej Grupy Użytkowników SQL Server • Microsoft Certified Trainer • MCP, MCSA, MLSS, MLSBS, MCTS, MCITP, MCT • SQL Server MVP (od 2010 roku) • Współtwórca PASS SQL Azure Virtual Chapter • Blogger, Influencer, Technical Writer • Od ponad 7 lat w Data Center we Wrocławiu • Ponad 12 lat w sektorze bankowym i informatycznym • GITCA Technical Lead & Vice-Chair EMEA Board • Freelancer: Trainer, Auditor, Consultant • Prelegent na konferencjach SQL Server Community Launch, Time for SharePoint, CodeCamps, SharePoint Community Launch, CISSP Day, InfoTRAMS, SQL Bits, SQL Saturday, CareerCon • Współautor Deep Dives: High availability of SQL Server in the context of Service Level Agreements (Chapter 18th) • Umoczone palce w: Exploring MDX using Microsoft SQL Server 2012
  • 3.
    AGENDA Plany Konserwacji –ale o co chodzi? Plany Konserwacji – jak, gdzie i kiedy? • Narzędzia, metody, sposoby Możliwości Planów Konserwacji • Back Up Database • Verify Integrity of Database • Maintain a Database Indexes • Maintain Index & Column Statistics • Remove Older Data from msdb • Remove Old Backups Kilka przykładów Podsumowanie
  • 4.
    Plany Konserwacji –ale o co chodzi?
  • 5.
    PLANY KONSERWACJI –ALE O CO CHODZI? • Porządek • Spokój • Znajomość środowiska • Wydajność DEFINICJA: A database maintenance plan is a set of specific, proactive task that need to be performer regularly on databases to ensure ttheir adequate performance and availability
  • 6.
    Plany Konserwacji –jak, gdzie i kiedy?
  • 7.
    PLANY KONSERWACJI –JAK, GDZIE, KIEDY? JAK: • Maintenance Plan Wizard • Maintenance Plan Designer • T-SQL Scripts • PowerShell Scripts GDZIE: • SSMS od wersji Standard wzwyż • do zobaczenie… Express’ie KIEDY: • Przed wystąpieniem problemów • W trakcie okienka serwisowego • Poza praca klientów
  • 8.
    PLANY KONSERWACJI –MAINTENANCE PLAN WIZARD • Prosty podstawowy kreator, pozwalający na stworzenie najważniejszych zadań w kilku krokach. • W wielu wypadkach w zupełności wystarczający • Posiadający limitowana, aczkolwiek całkiem pokaźna ilość opcji. • Ograniczenia: • Limitowana ilość baz danych , które możemy obsłużyć • Ograniczona granularność • Pojedyncze zadania – brak multi-taskingu • Brak możliwości oskryptowania innych instancji • Pewna ilość błędów we wcześniejszych wersjach SQL Server o SQL Server 2005 Service Pack 2 o SQL Server 2008
  • 9.
    PLANY KONSERWACJI –MAINTENANCE PLAN DESIGNER • Bardziej rozbudowane narzędzie korzystające z możliwości jakie daje interfejs graficzny obsługujący metodę „przeciągnij i upuść” wykorzystywaną w SSIS • Używany przez „prawdziwych DBA” • Zwiększone możliwości • Kontrola przepływu zdarzeń przy użyciu planu wykonania • Wsparcie dla wielu zadań – multi-tasking • Dwa dodatkowe Plany Konserwacji (niedostępne w Maintenance Wizard): o Execute T-SQL Statement o Notify Operator
  • 10.
    PLANY KONSERWACJI –MAINTENANCE PLAN WIZARD & DESIGNER • Ograniczenia obu narzędzi: • Identyfikacja i usunięcie fragmentacji z plików fizycznych • Identyfikacja zagubionych, zduplikowanych lub nieużywanych indeksów • Zapewnienie dostępności kopii zapasowej na żądanie • Weryfikacja dobrej jakości kopii zapasowej i jej prawidłowego odtworzenia • Monitorowanie wydajności • Monitorowanie błędów SQL Server • Monitorowanie błędów OS • Monitorowanie zajętej/wolnej przestrzeni
  • 11.
    PLANY KONSERWACJI –T-SQL SCRIPTS & POWERSHELL SCRIPTS • Funkcjonalności dla „naprawdę prawdziwych DBA” • Niezbędne podczas zarządzania wieloma bazami, instancjami, farmami serwerów • Przykładowo dla skryptów T-SQL dostajemy do wykorzystania: • Dostęp do systemu OS • Przenoszalność / Przenośność ? • Współdzielenie skryptów Jeden z najlepszych przykładów: HTTP://OLA.HALLENGREN.COM/
  • 12.
  • 13.
    PLANY KONSERWACJI –DOSTĘPNE ZADANIA (SSMS) • Check Database Integrity • DBCC CHECKDB • Shrink Database • NEVER, NEVER, NEVER • Reorganize Index • ALTER INDEX , a następnie Update Statistics • Rebuild Index • ALTER INDEX, Update Statistics nie jest potrzebne • Update Statistics • Sp_updatestats • History Cleanup • Używane na bazie msdb, nie jest zalecane zbyt częste użycie • Execute SQL Server Sgent Job • Pozwala na uzycie skryptów przy pracy z agentem • Back Up Database (Full) • Wykonuje BACKUP DATABASE z opcją FULL, następnie TL • Back Up Database (Differential) • Wykonuje BACKUP DATABASE z opcją DIFFERENTIAL • Back Up Database (Transaction Log) • Wykonuje BACKUP LOG, częstotliwość… • Maintenance Cleanup Task • Najbardziej skomplikowany aspekt funkcjonalności ? BAK, TRN, TXT
  • 14.
    MOŻLIWOŚCI – VERIFYINTEGRITY OF DATABASE WARTO PAMIĘTAĆ • Regularność DBCC CHECKDB • Dziennie • Tygodniowo • Miesięcznie? • DBCC CHECKDB (’database_name’) WITH NO_INFOMSGS • DBCC CHECKDB (’database_name’) WITH NO_INFOMSGS, ALL_ERRORMSGS • DBCC CHECKDB (’database_name’, NOINDEX)
  • 15.
    MOŻLIWOŚCI – SHRINKDATABASE WARTO PAMIĘTAĆ NIGDY NIE UŻYWAJMY TEJ OPCJI (w Planach Konserwacji) • MDF & LDF • 100 GB Zarezerwowane • 15 GB w użyciu • DBCC SHRINKDATABASE lub DBCC SHRINKFILE | MANUAL MODE • Redukcja Zarezerwowanego Miejsca
  • 16.
    MOŻLIWOŚCI – MAINTAININDEX & COLUMN STATISTICS WARTO PAMIĘTAĆ Automatyka: • AUTO_CREATE_STATISTICS • AUTO_UPDATE_STATISTICS • Funkcjonuje automatycznie po użyciu: INSERT, UPDATE, DELETE • UPDATE STATISTICS table_name WUTH FULLSCAN Kiedy używać: • Nigdy… • od razu po Index Reorganization • W dniach kiedy nie używamy Index Rebuild albo Reorganize Index Ważne opcje (UPDATE STATISTICS): • All existing statistics • Column statistics only • Index statistics only
  • 17.
  • 18.
    MOŻLIWOŚCI – HISTORYCLEAN UP (MSDB) Wybieramy dane historyczne do usunięcia: • Backup and restore history • SQL Server Agent job history • Maintenance Plan history
  • 19.
  • 20.
    • Praca organiczna,praca u podstaw • Należy zastanowić się nad: • Kolejnością zadań • Długością zadań • Ważnością zadań • Dokumentowanie • Używanie na co dzień / co tydzień / okazjonalnie • Lepsze poznanie własnego środowiska • Podgląd jego wydajności • NIESTETY: Standard, Enterprise i/lub wyższe • Maintenance Plan Wizard – na początek i przy małych instalacjach • Maintenance Plan Designer – dojrzałe i bardziej rozbudowane
  • 21.
    KONTAKT • MAIL: KoprowskiT@windowslive.com • MSG: KoprowskiT@windowslive.com • SKYPE: tjkoprowski • TWITTER/FACEBOOK/LINKEDIN: KoprowskiT BLOGS: ITPRO Anorak’s Vision: http://itblogs.pl/notbeautifulanymore/ [PL/EN] Volume Licensing Specialites: http://koprowskit.eu/licensing/ [PL] My MVP Blog: http://koprowskit.eu/geek/ [PL/EN/ES]
  • 22.