Memantau kueri dan meningkatkan performa beban kerja dengan penyetelan otomatis di portal Microsoft Azure
Berlaku untuk:Azure SQL Database
Azure 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.
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.
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:
- Sambungkan ke database Azure SQL.
- Klik kanan pada database.
- Pergi ke Properti dan pilih Penyimpanan Kueri.
- Ubah Mode Operasi menjadi Baca-Tulis.
- Ubah Mode Pengambilan Penyimpanan menjadi Otomatis .
- 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.