Ocena najlepszych rozwiązań SQL dla programu SQL Server na maszynach wirtualnych platformy Azure

Dotyczy:SQL Server na maszynie wirtualnej platformy Azure

Funkcja oceny najlepszych rozwiązań SQL w witrynie Azure Portal identyfikuje możliwe problemy z wydajnością i ocenia, że program SQL Server na maszynach wirtualnych platformy Azure jest skonfigurowany do stosowania najlepszych rozwiązań przy użyciu zaawansowanego zestawu reguł dostarczonego przez interfejs API oceny SQL.

Aby dowiedzieć się więcej, obejrzyj ten film wideo na temat oceny najlepszych rozwiązań SQL:

Omówienie

Po włączeniu funkcji oceny najlepszych rozwiązań SQL twoje wystąpienie i bazy danych programu SQL Server są skanowane w celu udostępnienia zaleceń dotyczących elementów, takich jak indeksy, przestarzałe funkcje, włączone lub brakujące flagi śledzenia, statystyki itp. Rekomendacje są wyświetlane na stronie zarządzania maszynami wirtualnymi SQL w witrynie Azure Portal.

Wyniki oceny są przekazywane do obszaru roboczego usługi Log Analytics przy użyciu agenta usługi Azure Monitor (AMA). Rozszerzenie AMA jest zainstalowane na maszynie wirtualnej z programem SQL Server, jeśli nie jest jeszcze zainstalowane, a zasoby usługi AMA, takie jak DCE, DCR są tworzone i połączone z określonym obszarem roboczym usługi Log Analytics.

Czas wykonywania oceny zależy od środowiska (liczby baz danych, obiektów itd.) z czasem trwania od kilku minut do godziny. Podobnie rozmiar wyniku oceny zależy również od środowiska. Ocena jest uruchamiana względem wystąpienia i wszystkich baz danych w tym wystąpieniu. W naszym teście zaobserwowaliśmy, że przebieg oceny może mieć do 5–10% wpływu procesora NA maszynę. W tych testach przeprowadzono ocenę, gdy aplikacja podobna do TPC-C była uruchomiona względem programu SQL Server.

Wymagania wstępne

Aby korzystać z funkcji oceny najlepszych rozwiązań SQL, musisz mieć następujące wymagania wstępne:

  • Maszyna wirtualna z programem SQL Server musi być zarejestrowana w rozszerzeniu IaaS programu SQL Server.
  • Obszar roboczy usługi Log Analytics w tej samej subskrypcji co maszyna wirtualna z programem SQL Server w celu przekazania wyników oceny.
  • Program SQL Server musi mieć wersję 2012 lub nowszą.

Włącz

Oceny najlepszych rozwiązań SQL można włączyć przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Aby włączyć oceny najlepszych rozwiązań SQL przy użyciu witryny Azure Portal, wykonaj następujące kroki:

  1. Zaloguj się do witryny Azure Portal i przejdź do zasobu maszyny wirtualnej z programem SQL Server.
  2. Wybierz pozycję Oceny najlepszych rozwiązań SQL w obszarze Ustawienia.
  3. Wybierz pozycję Włącz oceny najlepszych rozwiązań SQL lub Konfigurację, aby przejść do strony Konfiguracja.
  4. Zaznacz pole Włącz oceny najlepszych rozwiązań SQL i podaj następujące informacje:
    1. Obszar roboczy usługi Log Analytics, do którego zostaną przekazane oceny. Wybierz istniejący obszar roboczy w subskrypcji z listy rozwijanej.
    2. Wybierz grupę zasobów, w której zostaną utworzone zasoby agenta usługi Azure Monitor DCE i DCR . Jeśli określisz tę samą grupę zasobów na wielu maszynach wirtualnych programu SQL Server, te zasoby zostaną ponownie użyte.
    3. Harmonogram uruchamiania. Możesz uruchomić oceny na żądanie lub automatycznie zgodnie z harmonogramem. Jeśli wybierzesz harmonogram, podaj częstotliwość (co tydzień lub co miesiąc), dzień tygodnia, cykl (co 1–6 tygodni) oraz godzinę rozpoczęcia ocen (od lokalnego do czasu maszyny wirtualnej).
  5. Wybierz pozycję Zastosuj , aby zapisać zmiany i wdrożyć agenta usługi Azure Monitor na maszynie wirtualnej z programem SQL Server, jeśli nie został jeszcze wdrożony. Po przygotowaniu funkcji oceny najlepszych rozwiązań SQL dla maszyny wirtualnej z programem SQL Server zostanie wyświetlone powiadomienie w witrynie Azure Portal.

Ocena maszyny wirtualnej z programem SQL Server

Przebieg oceny:

  • Zgodnie z harmonogramem
  • Na żądanie

Uruchamianie zaplanowanej oceny

Ocenę można skonfigurować zgodnie z harmonogramem przy użyciu witryny Azure Portal i interfejsu wiersza polecenia platformy Azure.

Jeśli ustawisz harmonogram w okienku konfiguracji, ocena zostanie uruchomiona automatycznie o określonej dacie i godzinie. Wybierz pozycję Konfiguracja , aby zmodyfikować harmonogram oceny. Po podaniu nowego harmonogramu poprzedni harmonogram zostanie zastąpiony.

Uruchamianie oceny na żądanie

Po włączeniu funkcji oceny najlepszych rozwiązań SQL dla maszyny wirtualnej z programem SQL Server można uruchomić ocenę na żądanie przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure.

Aby uruchomić ocenę na żądanie przy użyciu witryny Azure Portal, wybierz pozycję Uruchom ocenę w okienku oceny najlepszych rozwiązań SQL na stronie zasobów maszyny wirtualnej programu SQL Server w witrynie Azure Portal.

Wyświetlanie wyników

Sekcja Wyniki oceny na stronie oceny najlepszych rozwiązań SQL zawiera listę najnowszych przebiegów oceny. Każdy wiersz wyświetla godzinę rozpoczęcia przebiegu i stan — zaplanowane, uruchomione, przekazując wyniki, ukończone lub zakończone. Każde uruchomienie oceny ma dwie części: ocenia wystąpienie i przekazuje wyniki do obszaru roboczego usługi Log Analytics. Pole stanu obejmuje obie części. Wyniki oceny są wyświetlane w skoroszytach platformy Azure.

Uzyskaj dostęp do wyników oceny skoroszytu platformy Azure na trzy sposoby:

  • Wybierz przycisk Wyświetl najnowszą pomyślną ocenę na stronie Oceny najlepszych rozwiązań SQL.
  • Wybierz ukończone uruchomienie w sekcji Wyniki oceny na stronie Oceny najlepszych rozwiązań SQL.
  • Wybierz pozycję Wyświetl wyniki oceny z pierwszych 10 zaleceń wyświetlanych na stronie Przegląd zasobu maszyny wirtualnej SQL.

Po otwarciu skoroszytu możesz użyć listy rozwijanej, aby wybrać poprzednie uruchomienia. Wyniki jednego przebiegu można wyświetlić przy użyciu strony Wyniki lub przejrzeć trendy historyczne przy użyciu strony Trendy .

Strona z wynikami

Strona Wyniki organizuje rekomendacje przy użyciu kart Wszystkie, nowe, rozwiązane. Użyj tych kart, aby wyświetlić wszystkie zalecenia z bieżącego przebiegu, wszystkie nowe zalecenia (różnicę z poprzednich przebiegów) lub rozwiązane zalecenia z poprzednich przebiegów. Karty ułatwiają śledzenie postępu między przebiegami. Karta Szczegółowe informacje identyfikuje najbardziej cykliczne problemy i bazy danych z największymi problemami. Użyj tych opcji, aby zdecydować, gdzie skoncentrować swoje wysiłki.

Ocena grup grafów powoduje różne kategorie ważności — wysoka, średnia, niska i informacje. Wybierz każdą kategorię, aby wyświetlić listę zaleceń lub wyszukać frazy kluczowe w polu wyszukiwania. Najlepiej zacząć od najpoważniejszych zaleceń i przejść na dół listy.

Pierwsza siatka przedstawia każde zalecenie i liczbę wystąpień, które środowisko napotkało w tym problemie. Po wybraniu wiersza w pierwszej siatce druga siatka wyświetla listę wszystkich wystąpień dla danego zalecenia. Jeśli w pierwszej siatce nie ma zaznaczenia, druga siatka pokazuje wszystkie zalecenia. Potencjalnie może to być duża lista. Możesz użyć list rozwijanych powyżej siatki (Nazwa, Ważność, Tagi, Sprawdź identyfikator), aby filtrować wyniki. Możesz również użyć opcji Eksportuj do programu Excel i Otwórz ostatnie uruchomienie zapytania w opcjach widoku Dzienniki, wybierając małe ikony w prawym górnym rogu każdej siatki.

Przekazana sekcja grafu identyfikuje zalecenia, które system już obserwuje.

Wyświetl szczegółowe informacje dla każdej rekomendacji, wybierając pole Komunikat , takie jak długi opis i odpowiednie zasoby online.

Na stronie Trendy znajdują się trzy wykresy pokazujące zmiany w czasie: wszystkie problemy, nowe problemy i rozwiązane problemy. Wykresy ułatwiają wyświetlanie postępu. Najlepiej, aby liczba zaleceń spadła, podczas gdy liczba rozwiązanych problemów wzrasta. Legenda przedstawia średnią liczbę problemów dla każdego poziomu ważności. Umieść kursor na słupkach, aby zobaczyć poszczególne wartości dla każdego przebiegu.

Jeśli w ciągu jednego dnia istnieje wiele uruchomień, na stronie Trendy znajduje się tylko najnowszy przebieg.

Włącz dla wszystkich maszyn wirtualnych w subskrypcji

Interfejs wiersza polecenia platformy Azure umożliwia włączenie funkcji oceny najlepszych rozwiązań SQL na wszystkich maszynach wirtualnych z programem SQL Server w ramach subskrypcji. W tym celu użyj następującego przykładowego skryptu:

# This script is formatted for use with Az CLI on Windows PowerShell. You may need to update the script for use with Az CLI on other shells.
# This script enables SQL best practices assessment feature for all SQL Servers on Azure VMs in a given subscription. It configures the VMs to use a Log Analytics workspace to upload assessment results. It sets a schedule to start an assessment run every Sunday at 11pm (local VM time).
# Please note that if a VM is already associated with another Log Analytics workspace, it will give an error.
 
$subscriptionId = 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX'
# Resource Group where the Log Analytics workspace belongs
$myWsRg = 'myWsRg'
# Log Analytics workspace where assessment results will be stored
$myWsName = 'myWsName'
# Resource Group where the Azure Monitor Agent resources will be created
$myAgentRg = 'myAgentRg'
 
# Ensure in correct subscription
az account set --subscription $subscriptionId
 
$sqlvms = az sql vm list | ConvertFrom-Json 
 
foreach ($sqlvm in $sqlvms)
{
  echo "Configuring feature on $($sqlvm.id)"
  az sql vm update --assessment-weekly-interval 1 --assessment-day-of-week Sunday --assessment-start-time-local "23:00" --workspace-name $myWsName --workspace-rg $myWsRg -g $sqlvm.resourceGroup --agent-rg $myAgentRg -n $sqlvm.name
  
  # Alternatively you can use this command to only enable the feature without setting a schedule
  # az sql vm update --enable-assessment true --workspace-name $myWsName --workspace-rg $myWsRg -g $sqlvm.resourceGroup --agent-rg $myAgentRg -n $sqlvm.name  
 
  # You can use this command to start an on-demand assessment on each VM
  # az sql vm start-assessment -g $sqlvm.resourceGroup -n $sqlvm.name
}

Znane problemy

Podczas korzystania z ocen najlepszych rozwiązań SQL mogą wystąpić niektóre z następujących znanych problemów.

Migrowanie z programu Microsoft Monitoring Agent (MMA) do agenta usługi Azure Monitor (AMA)

Wcześniej funkcja oceny najlepszych rozwiązań SQL używała programu MMA do przekazywania ocen do obszaru roboczego usługi Log Analytics. MMA jest wycofywana. Ta funkcja używa teraz usługi AMA do przekazywania ocen. Jeśli w przeszłości włączono ocenę najlepszych rozwiązań SQL przy użyciu programu MMA, możesz łatwo przeprowadzić migrację do usługi AMA, wyłączając najpierw, a następnie ponownie włączając tę funkcję. Istniejące wyniki będą nadal dostępne po operacji wyłączania/włączania, o ile określisz ten sam obszar roboczy usługi Log Analytics. Jeśli nie jest on używany przez inne usługi, możesz w tym momencie usunąć program Microsoft Monitoring Agent, postępując zgodnie z tymi instrukcjami. Przed migracją upewnij się, że usługa Azure Monitor Log Analytics jest obsługiwana w regionie, w którym znajduje się maszyna wirtualna z programem SQL Server, korzystając z tabeli połączonej tutaj.

Niepowodzenie wdrażania w przypadku włączenia lub uruchomienia oceny

Zapoznaj się z historią wdrożenia grupy zasobów zawierającej maszynę wirtualną SQL, aby wyświetlić komunikat o błędzie powiązany z akcją zakończoną niepowodzeniem.

Nieudane oceny

Jeśli ocena lub przekazanie wyników nie powiodło się z jakiegoś powodu, stan tego przebiegu będzie wskazywać błąd. Kliknięcie stanu spowoduje otwarcie okienka kontekstowego, w którym można wyświetlić szczegółowe informacje o awarii i możliwe sposoby rozwiązania problemu.

Napiwek

Jeśli w systemie Windows wymuszono protokół TLS 1.0 lub nowszy i wyłączono starsze protokoły SSL zgodnie z opisem w tym miejscu, należy również upewnić się, że program .NET Framework jest skonfigurowany do używania silnej kryptografii.

Następne kroki