Udostępnij za pośrednictwem


Monitorowanie zapytań i zwiększanie wydajności obciążeń za pomocą automatycznego dostrajania w witrynie Azure Portal

Dotyczy:Azure SQL DatabaseAzure SQL Managed Instance

Usługa Azure SQL Database automatycznie zarządza usługami danych, które stale monitorują zapytania i identyfikują akcję, którą można wykonać w celu zwiększenia wydajności obciążenia. Możesz przejrzeć zalecenia i ręcznie je zastosować lub zezwolić usłudze Azure SQL Database na automatyczne stosowanie akcji naprawczych. Jest to nazywane trybem automatycznego dostrajania .

Automatyczne dostrajanie można włączyć na poziomie serwera lub bazy danych za pomocą następujących metod:

Uwaga

W przypadku usługi Azure SQL Managed Instance obsługiwaną opcję FORCE_LAST_GOOD_PLAN można skonfigurować tylko przez T-SQL. Konfiguracja oparta na witrynie Azure Portal i opcje automatycznego dostrajania indeksów opisane w tym artykule nie mają zastosowania do usługi Azure SQL Managed Instance.

Konfigurowanie opcji automatycznego dostrajania za pomocą szablonu usługi Azure Resource Manager (ARM) nie jest obecnie obsługiwane.

Włączanie automatycznego dostrajania na serwerze

Na poziomie serwera można dziedziczyć konfigurację automatycznego dostrajania z "Wartości domyślne platformy Azure" lub nie dziedziczyć konfiguracji. Wartości domyślne platformy Azure to FORCE_LAST_GOOD_PLAN włączone, CREATE_INDEX wyłączone i DROP_INDEX wyłączone.

Azure Portal

Aby włączyć automatyczne dostrajanie na serwerze w usłudze Azure SQL Database, przejdź do serwera w witrynie Azure Portal, a następnie wybierz pozycję Automatyczne dostrajanie w menu.

Zrzut ekranu przedstawia automatyczne dostrajanie w witrynie Azure Portal, gdzie można zastosować opcje dla serwera.

Wybierz opcje automatycznego dostrajania, które chcesz włączyć, i wybierz pozycję Zastosuj.

Opcje automatycznego dostrajania na serwerze są stosowane do wszystkich baz danych na tym serwerze. Domyślnie wszystkie bazy danych dziedziczą konfigurację z serwera nadrzędnego, ale można ją zastąpić i określić osobno dla każdej bazy danych.

Interfejs API REST

Aby dowiedzieć się więcej na temat używania interfejsu API REST do włączania automatycznego dostrajania na serwerze, zobacz Automatyczne dostrajanie serwera UPDATE i GET metod HTTP.

Konfigurowanie opcji automatycznego dostrajania za pomocą szablonu usługi Azure Resource Manager (ARM) nie jest obecnie obsługiwane.

Włączanie automatycznego dostrajania dla pojedynczej bazy danych

Usługa Azure SQL Database umożliwia indywidualne określenie konfiguracji automatycznego dostrajania dla każdej bazy danych. Na poziomie bazy danych można dziedziczyć konfigurację automatycznego dostrajania z serwera nadrzędnego "Ustawienia domyślne platformy Azure" lub nie dziedziczyć konfiguracji. Te wartości domyślne są następujące:

  • FORCE_LAST_GOOD_PLAN jest włączona
  • CREATE_INDEX jest wyłączona
  • DROP_INDEX jest wyłączona

Napiwek

Ogólne zalecenie polega na zarządzaniu konfiguracją automatycznego dostrajania na poziomie serwera, aby te same ustawienia konfiguracji można było stosować automatycznie w każdej bazie danych. Skonfiguruj automatyczne dostrajanie dla pojedynczej bazy danych tylko wtedy, gdy ta baza danych ma inne ustawienia niż inne dziedziczące ustawienia z tego samego serwera.

Azure Portal

Aby włączyć automatyczne dostrajanie w pojedynczej bazie danych, przejdź do bazy danych w witrynie Azure Portal i wybierz pozycję Automatyczne dostrajanie.

Poszczególne ustawienia automatycznego dostrajania można skonfigurować oddzielnie dla każdej bazy danych. Można ręcznie skonfigurować pojedynczą opcję automatycznego dostrajania lub określić, że opcja dziedziczy jej ustawienia z serwera.

Zrzut ekranu przedstawia automatyczne dostrajanie w witrynie Azure Portal, gdzie można zastosować opcje dla pojedynczej bazy danych.

Po wybraniu żądanej konfiguracji wybierz pozycję Zastosuj.

Interfejs API REST

Aby dowiedzieć się więcej na temat używania interfejsu API REST do włączania automatycznego dostrajania w pojedynczej bazie danych, zobacz Automatyczne dostrajanie usługi Azure SQL Database UPDATE i GET metod HTTP.

Konfigurowanie opcji automatycznego dostrajania za pomocą szablonu usługi Azure Resource Manager (ARM) nie jest obecnie obsługiwane.

T-SQL

Aby włączyć automatyczne dostrajanie pojedynczej bazy danych za pośrednictwem języka T-SQL, połącz się z bazą danych i wykonaj następujące zapytanie:

ALTER DATABASE current SET AUTOMATIC_TUNING = AUTO | INHERIT | CUSTOM

Ustawienie automatycznego dostrajania na AUTO stosuje ustawienia domyślne platformy Azure. Jeśli ustawisz na INHERIT, automatyczna konfiguracja dostrajania zostanie odziedziczona z serwera nadrzędnego. Jeśli wybierzesz CUSTOM, musisz ręcznie skonfigurować automatyczne dostrajanie.

Aby skonfigurować poszczególne opcje automatycznego dostrajania za pośrednictwem języka T-SQL, połącz się z bazą danych i wykonaj następujące zapytanie:

ALTER DATABASE CURRENT SET AUTOMATIC_TUNING (
    FORCE_LAST_GOOD_PLAN = ON,
    CREATE_INDEX = ON,
    DROP_INDEX = OFF
);

Ustawienie opcji dostrajania indywidualnego na Wł. zastępuje wszystkie ustawienia odziedziczone przez bazę danych i włącza opcję dostrajania. Ustawienie go na OFF powoduje również zastąpienie wszystkich ustawień dziedziczonej bazy danych i wyłącza opcję dostrajania. Opcje automatycznego dostrajania, dla których określono DEFAULT dziedziczą konfigurację automatycznego dostrajania z ustawień na poziomie serwera.

Ważne

W przypadku aktywnej replikacji geograficznejautomatyczne dostrajanie należy skonfigurować wyłącznie w podstawowej bazie danych. Automatycznie stosowane akcje dostrajania, takie jak tworzenie lub usuwanie indeksu, są automatycznie replikowane do sekundarnych lokalizacji geograficznych. Próba włączenia automatycznego dostrajania za pośrednictwem języka T-SQL w pomocniczym trybie tylko do odczytu powoduje awarię, ponieważ posiadanie innej konfiguracji dostrajania w pomocniczym trybie tylko do odczytu nie jest obsługiwane.

Aby dowiedzieć się więcej o opcjach T-SQL do konfigurowania automatycznego dostrajania, zobacz ALTER DATABASE SET Options.

Rozwiązywanie problemów

Automatyczne zarządzanie rekomendacjami jest wyłączone

Jeśli widzisz komunikaty o błędach, że automatyczne zarządzanie rekomendacjami zostało wyłączone lub system je wyłączył, najbardziej typowe przyczyny to:

  • Magazyn zapytań nie jest włączony lub
  • Magazyn zapytań jest w trybie tylko do odczytu dla określonej bazy danych lub
  • Magazyn zapytań przestał działać, ponieważ zabrakło przydzielonego miejsca do magazynowania.

Aby rozwiązać ten problem, można rozważyć następujące kroki:

  • Wyczyść magazyn zapytań lub zmodyfikuj okres przechowywania danych na "automatycznie" przy użyciu języka T-SQL lub zwiększ maksymalny rozmiar magazynu zapytań. Zobacz, jak skonfigurować zalecane zasady przechowywania i przechwytywania dla magazynu zapytań.

  • Użyj programu SQL Server Management Studio (SSMS) i wykonaj następujące kroki:

    1. Połącz się z bazą danych Azure SQL Database.
    2. Kliknij prawym przyciskiem myszy bazę danych.
    3. Przejdź do właściwości i wybierz pozycję Magazyn zapytań.
    4. Zmień tryb operacji na odczytu i zapisu.
    5. Zmień tryb przechwytywania magazynu na Auto.
    6. Zmień tryb oczyszczania oparty na rozmiarze na Auto.

Uprawnienia

W przypadku usługi Azure SQL Database zarządzanie automatycznym dostrajaniem w portalu Azure lub korzystanie z programu PowerShell lub interfejsu API REST wymaga członkostwa we wbudowanych rolach kontroli dostępu opartych na rolach (RBAC).

Aby zarządzać dostrajaniem automatycznym, minimalnym wymaganym uprawnieniem do udzielenia użytkownikowi jest członkostwo w roli współautora usługi SQL Database. Możesz również rozważyć użycie wyższych ról uprawnień, takich jak współautor programu SQL Server, współautor i właściciel.

Aby uzyskać uprawnienia wymagane do zarządzania automatycznym dostrajaniem za pomocą języka T-SQL, zobacz Uprawnienia dla ALTER DATABASE.

Konfigurowanie automatycznych dostrajania powiadomień e-mail

Aby otrzymywać automatyczne powiadomienia e-mail dotyczące zaleceń wykonanych przez automatyczne dostrajanie, zobacz przewodnik automatyczne dostrajanie powiadomień e-mail.