Bagikan melalui


Memantau kueri dan meningkatkan performa beban kerja dengan penyetelan otomatis di portal Microsoft Azure

Berlaku untuk:Azure SQL DatabaseAzure SQL Managed Instance

Azure SQL Database secara otomatis mengelola layanan data yang terus memantau kueri Anda dan mengidentifikasi tindakan yang dapat Anda lakukan untuk meningkatkan performa beban kerja. Anda dapat meninjau rekomendasi dan menerapkannya secara manual, atau mengizinkan Azure SQL Database menerapkan tindakan korektif secara otomatis. Ini dikenal sebagai mode penyetelan otomatis.

Penyetelan otomatis dapat diaktifkan di tingkat server atau database melalui:

Catatan

Untuk Azure SQL Managed Instance, opsi yang didukung FORCE_LAST_GOOD_PLAN hanya dapat dikonfigurasi melalui T-SQL. Konfigurasi berbasis portal Microsoft Azure dan opsi penyetelan indeks otomatis yang dijelaskan dalam artikel ini tidak berlaku untuk Azure SQL Managed Instance.

Mengonfigurasi opsi penyetelan otomatis melalui templat Azure Resource Manager (ARM) saat ini tidak didukung.

Mengaktifkan penyetelan otomatis di server

Pada tingkat server, Anda dapat memilih untuk mewarisi konfigurasi penyetelan otomatis dari "Azure Defaults" atau memilih untuk tidak mewarisinya. Pengaturan bawaan Azure adalah FORCE_LAST_GOOD_PLAN diaktifkan, CREATE_INDEX mati, dan DROP_INDEX mati.

Portal Azure

Untuk mengaktifkan penyetelan otomatis pada server di Azure SQL Database, arahkan ke server di portal Microsoft Azure lalu pilih Penyetelan otomatis di menu.

Cuplikan layar memperlihatkan Penyetelan otomatis di portal Microsoft Azure, tempat Anda dapat menerapkan opsi untuk server.

Pilih opsi penyetelan otomatis yang ingin Anda aktifkan dan pilih Terapkan.

Opsi penyetelan otomatis pada server diterapkan ke semua database di server ini. Secara default, semua database mewarisi konfigurasi dari server induknya, tetapi konfigurasi ini dapat ditimpa dan ditentukan untuk setiap database secara individual.

REST API

Untuk mengetahui lebih lanjut tentang menggunakan REST API untuk mengaktifkan penyetelan otomatis di server, lihat Penyetelan otomatis server metode PERBARUI dan DAPATKAN HTTP.

Mengonfigurasi opsi penyetelan otomatis melalui templat Azure Resource Manager (ARM) saat ini tidak didukung.

Mengaktifkan penyetelan otomatis pada database individual

Azure SQL Database memungkinkan Anda menentukan konfigurasi penyetelan otomatis untuk setiap database secara individual. Pada tingkat database Anda dapat memilih untuk mewarisi konfigurasi penyetelan otomatis dari server induk, "Default Azure" atau untuk tidak mewarisi konfigurasinya. Default ini adalah sebagai berikut:

  • FORCE_LAST_GOOD_PLAN diaktifkan
  • CREATE_INDEX dinonaktifkan
  • DROP_INDEX dinonaktifkan

Tip

Rekomendasi umum adalah mengelola konfigurasi penyetelan otomatis di tingkat server sehingga pengaturan konfigurasi yang sama dapat diterapkan pada setiap database secara otomatis. Konfigurasikan penyetelan otomatis pada database individual hanya jika Anda memerlukan database tersebut untuk memiliki pengaturan yang berbeda dari database yang mewarisi pengaturan dari server yang sama.

Portal Azure

Untuk mengaktifkan penyetelan otomatis pada database tunggal, arahkan ke database di portal Microsoft Azure dan pilih Penyetelan otomatis.

Pengaturan penyetelan otomatis individual dapat dikonfigurasi secara terpisah untuk setiap database. Anda dapat mengonfigurasi opsi penyetelan otomatis individual secara manual, atau menentukan apakah opsi mewarisi pengaturannya dari server.

Cuplikan layar memperlihatkan penyetelan otomatis di portal Microsoft Azure, tempat Anda dapat menerapkan opsi untuk satu database.

Setelah Anda memilih konfigurasi yang Anda inginkan, pilih Terapkan.

REST API

Untuk mengetahui lebih lanjut tentang menggunakan REST API untuk mengaktifkan penyetelan otomatis di database tunggal, lihat Penyetelan otomatis Azure SQL Database metode PERBARUI dan DAPATKAN HTTP.

Mengonfigurasi opsi penyetelan otomatis melalui templat Azure Resource Manager (ARM) saat ini tidak didukung.

T-SQL

Untuk mengaktifkan penyetelan otomatis pada database tunggal melalui T-SQL, sambungkan ke database dan jalankan kueri berikut:

ALTER DATABASE current SET AUTOMATIC_TUNING = AUTO | INHERIT | CUSTOM

Mengatur penyetelan otomatis ke AUTO menerapkan default Azure. Mengaturnya ke INHERIT, konfigurasi penyetelan otomatis diwariskan dari server induk. Jika Anda memilih CUSTOM, Anda harus mengonfigurasi penyetelan otomatis secara manual.

Untuk mengonfigurasi opsi penyetelan otomatis individual melalui T-SQL, sambungkan ke database dan jalankan kueri berikut:

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

Mengatur opsi penyetelan individual ke AKTIF mengambil alih pengaturan apa pun yang diwarisi database, dan mengaktifkan opsi penyetelan. Mengaturnya ke OFF juga menggantikan pengaturan yang diwarisi dari database dan mematikan opsi penyetelan. Opsi penyetelan otomatis yang telah ditentukan dengan DEFAULT mewarisi konfigurasi penyetelan otomatis dari pengaturan tingkat server.

Penting

Untuk replikasi geografis aktif, penyetelan otomatis harus dikonfigurasi pada database utama saja. Tindakan tuning yang diterapkan secara otomatis, seperti membuat atau menghapus indeks, secara otomatis direplikasi ke lokasi sekunder geografis. Mencoba mengaktifkan penyetelan otomatis melalui T-SQL pada sekunder baca-saja mengakibatkan kegagalan, karena memiliki konfigurasi penyetelan yang berbeda pada sekunder baca-saja tidak didukung.

Untuk mengetahui lebih lanjut tentang opsi T-SQL untuk mengonfigurasi penyetelan otomatis, lihat ALTER DATABASE SET Options.

Pemecahan Masalah

Manajemen rekomendasi otomatis dinonaktifkan

Jika Anda melihat pesan kesalahan bahwa manajemen rekomendasi otomatis dinonaktifkan, atau dinonaktifkan oleh sistem, penyebab paling umum adalah:

  • Penyimpanan Kueri tidak diaktifkan, atau
  • Query Store dalam mode baca-saja untuk database tertentu, atau
  • Penyimpanan Kueri berhenti berjalan karena kehabisan ruang penyimpanan yang dialokasikan.

Langkah-langkah berikut dapat dipertimbangkan untuk memperbaiki masalah ini:

  • Bersihkan Penyimpanan Kueri, atau ubah periode retensi data menjadi "otomatis" dengan menggunakan T-SQL, atau tingkatkan ukuran maksimum Penyimpanan Kueri. Lihat cara mengonfigurasi kebijakan retensi dan pengambilan yang direkomendasikan untuk Query Store.

  • Gunakan SQL Server Management Studio (SSMS) dan ikuti langkah-langkah berikut:

    1. Sambungkan ke database Azure SQL.
    2. Klik kanan pada database.
    3. Pergi ke Properti dan pilih Penyimpanan Kueri.
    4. Ubah Mode Operasi menjadi Baca-Tulis.
    5. Ubah Mode Pengambilan Penyimpanan menjadi Otomatis .
    6. Ubah Mode Pembersihan Berbasis Ukuran menjadi Otomatis .

Izin

Untuk Azure SQL Database, mengelola penyetelan otomatis di portal Microsoft Azure, atau menggunakan PowerShell atau REST API memerlukan keanggotaan dalam peran kontrol akses berbasis peran (RBAC) Azure bawaan.

Untuk mengelola penyetelan otomatis, izin minimum yang diperlukan untuk diberikan kepada pengguna adalah keanggotaan dalam peran kontributor SQL Database. Anda juga dapat mempertimbangkan untuk menggunakan peran hak istimewa yang lebih tinggi seperti Kontributor SQL Server, Kontributor, dan Pemilik.

Untuk izin yang diperlukan untuk mengelola penyetelan otomatis dengan T-SQL, lihat Izin untuk ALTER DATABASE.

Mengonfigurasi pemberitahuan email penyetelan otomatis

Untuk menerima pemberitahuan email otomatis berdasarkan rekomendasi yang dibuat oleh penyetelan otomatis, lihat panduan pemberitahuan email penyetelan otomatis.