sys.database_query_store_options (T-SQL)
Berlaku untuk: SQL Server 2016 (13.x) dan yang lebih baru Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics
Mengembalikan opsi Penyimpanan Kueri untuk database ini.
Nama kolom | Jenis data | Deskripsi |
---|---|---|
desired_state |
smallint | Menunjukkan mode operasi yang diinginkan dari Penyimpanan Kueri, secara eksplisit diatur oleh pengguna.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 4 = READ_CAPTURE_SECONDARY |
desired_state_desc |
nvarchar(60) | Deskripsi tekstual mode operasi yang diinginkan dari Penyimpanan Kueri:OFF READ_ONLY READ_WRITE READ_CAPTURE_SECONDARY |
actual_state |
smallint | Menunjukkan mode operasi Penyimpanan Kueri. Selain daftar status yang diinginkan yang diperlukan oleh pengguna, status aktual dapat menjadi status kesalahan.0 = OFF 1 = READ_ONLY 2 = READ_WRITE 3 = ERROR 4 = READ_CAPTURE_SECONDARY |
actual_state_desc |
nvarchar(60) | Deskripsi tekstual mode operasi aktual Penyimpanan Kueri.OFF READ_ONLY READ_WRITE ERROR READ_CAPTURE_SECONDARY Ada situasi ketika status aktual berbeda dari status yang diinginkan: - Jika database diatur ke mode baca-saja, atau jika ukuran Penyimpanan Kueri melebihi kuota yang dikonfigurasi, Penyimpanan Kueri mungkin beroperasi dalam mode baca-saja bahkan jika Anda menentukan baca-tulis. - Dalam skenario ekstrem, Query Store dapat memasukkan status ERROR karena kesalahan internal. Di SQL Server 2017 (14.x) dan versi yang lebih baru, jika ini terjadi, Penyimpanan Kueri dapat dipulihkan dengan menjalankan prosedur tersimpan sp_query_store_consistency_check dalam database yang terpengaruh. Jika berjalan sp_query_store_consistency_check tidak berfungsi, atau jika Anda menggunakan SQL Server 2016 (13.x), Anda perlu menghapus data dengan menjalankan ALTER DATABASE [YourDatabaseName] SET QUERY_STORE CLEAR ALL; |
readonly_reason |
int | desired_state_desc Ketika adalah dan actual_state_desc adalah READ_WRITE READ_ONLY , readonly_reason mengembalikan peta bit untuk menunjukkan mengapa Penyimpanan Kueri dalam mode baca-saja.1 - database dalam mode baca-saja2 - database dalam mode pengguna tunggal4 - database dalam mode darurat8 - database adalah replika sekunder (berlaku untuk grup ketersediaan dan replikasi geografis Azure SQL Database). Nilai ini dapat diamati secara efektif hanya pada readable replika sekunder65536 - Penyimpanan Kueri mencapai batas ukuran yang max_storage_size_mb ditetapkan oleh opsi . Untuk informasi selengkapnya tentang opsi ini, lihat OPSI UBAH KUMPULAN DATABASE.131072 - Jumlah pernyataan yang berbeda di Penyimpanan Kueri mencapai batas memori internal. Pertimbangkan untuk menghapus kueri yang tidak Anda perlukan atau tingkatkan ke tingkat layanan yang lebih tinggi untuk mengaktifkan transfer Penyimpanan Kueri ke mode baca-tulis.262144 - Ukuran item dalam memori yang menunggu untuk dipertahankan pada disk mencapai batas memori internal. Penyimpanan Kueri berada dalam mode baca-saja untuk sementara hingga item dalam memori dipertahankan pada disk.524288 - Database mencapai batas ukuran disk. Penyimpanan Kueri adalah bagian dari database pengguna, jadi jika tidak ada lagi ruang yang tersedia untuk database, itu berarti bahwa Penyimpanan Kueri tidak dapat berkembang lebih jauh lagi.Untuk mengalihkan mode operasi Penyimpanan Kueri kembali ke baca-tulis, lihat Memverifikasi bahwa Penyimpanan Kueri mengumpulkan data kueri terus menerus. |
current_storage_size_mb |
bigint | Ukuran Penyimpanan Kueri pada disk dalam megabyte. |
flush_interval_seconds |
bigint | Periode pembilasan reguler data Penyimpanan Kueri ke disk dalam hitungan detik. Nilai defaultnya adalah 900 (15 menit).Ubah dengan menggunakan ALTER DATABASE <database> SET QUERY_STORE (DATA_FLUSH_INTERVAL_SECONDS = <interval>) pernyataan . |
interval_length_minutes |
bigint | Interval agregasi statistik dalam hitungan menit. Nilai arbitrer tidak diizinkan. Gunakan salah satu nilai berikut: 1 , , 5 , 10 15 , 30 , 60 , , dan 1440 menit. Nilai defaultnya adalah 60 menit. |
max_storage_size_mb |
bigint | Ukuran disk maksimum untuk Penyimpanan Kueri dalam megabyte (MB). Nilai defaultnya adalah 100 MB hingga SQL Server 2017 (14.x), dan 1 GB di SQL Server 2019 (15.x) dan versi yang lebih baru. Untuk edisi SQL Database Premium, defaultnya adalah 1 GB, dan untuk edisi SQL Database Basic, defaultnya adalah 10 MB. Ubah dengan menggunakan ALTER DATABASE <database> SET QUERY_STORE (MAX_STORAGE_SIZE_MB = <size>) pernyataan . |
stale_query_threshold_days |
bigint | Jumlah hari informasi untuk kueri disimpan di Penyimpanan Kueri. Nilai default 30 . Atur ke 0 untuk menonaktifkan kebijakan penyimpanan.Untuk edisi SQL Database Basic, defaultnya adalah 7 hari. Ubah dengan menggunakan ALTER DATABASE <database> SET QUERY_STORE (CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = <value>)) pernyataan . |
max_plans_per_query |
bigint | Membatasi jumlah maksimum paket tersimpan. Nilai default 200 . Jika nilai maksimum tercapai, Penyimpanan Kueri berhenti menangkap paket baru untuk kueri tersebut. Pengaturan untuk 0 menghapus batasan jumlah paket yang diambil.Ubah dengan menggunakan ALTER DATABASE<database> SET QUERY_STORE (MAX_PLANS_PER_QUERY = <n>) pernyataan . |
query_capture_mode |
smallint | Mode pengambilan kueri yang saat ini aktif:1 = ALL - semua kueri diambil. Ini adalah nilai konfigurasi default untuk SQL Server 2016 (13.x) dan versi yang lebih baru.2 = AUTO - menangkap kueri yang relevan berdasarkan jumlah eksekusi dan konsumsi sumber daya. Ini adalah nilai konfigurasi default untuk SQL Database.3 = NONE - berhenti menangkap kueri baru. Penyimpanan Kueri terus mengumpulkan statistik kompilasi dan runtime untuk kueri yang sudah diambil. Gunakan konfigurasi ini dengan hati-hati karena Anda mungkin kehilangan pengambilan kueri penting.4 = CUSTOM - Memungkinkan kontrol lebih atas kebijakan pengambilan kueri menggunakan opsi QUERY_CAPTURE_POLICY.Berlaku untuk: SQL Server 2019 (15.x) dan versi yang lebih baru. |
query_capture_mode_desc |
nvarchar(60) | Deskripsi tekstual mode pengambilan aktual Penyimpanan Kueri:ALL (default untuk SQL Server 2016 (13.x) dan versi yang lebih baru)AUTO (default untuk SQL Database)NONE CUSTOM |
capture_policy_execution_count |
int | Opsi kebijakan mode CUSTOM pengambilan kueri. Menentukan berapa kali kueri dijalankan selama periode evaluasi. Default adalah 30 .Berlaku untuk: SQL Server 2019 (15.x) dan versi yang lebih baru. |
capture_policy_total_compile_cpu_time_ms |
bigint | Opsi kebijakan mode CUSTOM pengambilan kueri. Menentukan total waktu CPU kompilasi yang berlalu yang digunakan oleh kueri selama periode evaluasi. Defaultnya adalah 1000.Berlaku untuk: SQL Server 2019 (15.x) dan versi yang lebih baru. |
capture_policy_total_execution_cpu_time_ms |
bigint | Opsi kebijakan mode CUSTOM pengambilan kueri. Menentukan total waktu CPU eksekusi yang berlalu yang digunakan oleh kueri selama periode evaluasi. Default adalah 100 .Berlaku untuk: SQL Server 2019 (15.x) dan versi yang lebih baru. |
capture_policy_stale_threshold_hours |
int | Opsi kebijakan mode CUSTOM pengambilan kueri. Menentukan periode interval evaluasi untuk menentukan apakah kueri harus diambil. Defaultnya adalah 24 jam.Berlaku untuk: SQL Server 2019 (15.x) dan versi yang lebih baru. |
size_based_cleanup_mode |
smallint | Mengontrol apakah pembersihan diaktifkan secara otomatis ketika jumlah total data mendekati ukuran maksimum:0 = OFF - pembersihan berbasis ukuran tidak diaktifkan secara otomatis.1 = AUTO - pembersihan berbasis ukuran diaktifkan secara otomatis ketika ukuran pada disk mencapai 90 persen dari max_storage_size_mb . Ini adalah nilai konfigurasi default.Pembersihan berbasis ukuran menghapus kueri yang paling murah dan terlama terlebih dahulu. Ini berhenti ketika sekitar 80 persen max_storage_size_mb tercapai. |
size_based_cleanup_mode_desc |
nvarchar(60) | Deskripsi tekstual mode pembersihan berbasis ukuran aktual Penyimpanan Kueri:OFF AUTO (default) |
wait_stats_capture_mode |
smallint | Mengontrol apakah Penyimpanan Kueri melakukan pengambilan statistik tunggu:0 = OFF 1 = ON Berlaku untuk: SQL Server 2017 (14.x) dan versi yang lebih baru. |
wait_stats_capture_mode_desc |
nvarchar(60) | Deskripsi tekstual dari mode pengambilan statistik tunggu aktual:OFF ON (default)Berlaku untuk: SQL Server 2017 (14.x) dan versi yang lebih baru. |
actual_state_additional_info |
nvarchar(4000) | Saat ini tidak digunakan. |
Izin
Memerlukan VIEW DATABASE STATE
izin.
Keterangan
Nilai actual_state_desc
READ_CAPTURE_SECONDARY
adalah status yang diharapkan saat Penyimpanan Kueri untuk replika sekunder diaktifkan. Untuk informasi selengkapnya, lihat Penyimpanan Kueri untuk replika sekunder.
Konten terkait
- sys.query_context_settings (T-SQL)
- sys.query_store_plan (T-SQL)
- sys.query_store_query (T-SQL)
- sys.query_store_query_text (T-SQL)
- sys.query_store_runtime_stats (T-SQL)
- sys.query_store_wait_stats (T-SQL)
- sys.query_store_runtime_stats_interval (T-SQL)
- Memantau Performa Dengan Menggunakan Penyimpanan Kueri
- Tampilan katalog sistem (Transact-SQL)
- sys.fn_stmt_sql_handle_from_sql_stmt (T-SQL)
- Prosedur tersimpan Penyimpanan Kueri (Transact-SQL)