Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Microsoft Fabric'te SQL veritabanı
Indeks eksik olan veritabanı tablosu sütunları hakkında bilgi döndürür.
sys.dm_db_missing_index_columns dinamik bir yönetim fonksiyonudur.
Sözdizimi
sys.dm_db_missing_index_columns(index_handle)
Arguments
index_handle
Eksik bir indeksi benzersiz şekilde tanımlayan bir tam sayı. Aşağıdaki dinamik yönetim nesnelerinden elde edilebilir:
sys.dm_db_missing_index_details (Transact-SQL)
sys.dm_db_missing_index_groups (Transact-SQL)
Döndürülen Tablo
| Sütun adı | Veri türü | Description |
|---|---|---|
| column_id | int | Sütunun kimliği. |
| column_name | sysname | Tablo sütununun adı. |
| column_usage | varchar(20) | Sorgu sütununun nasıl kullanıldığı. Olası değerler ve tanımları şunlardır: EŞITLIK: Sütun, eşitliği ifade eden bir önleme katkıda bulunur: table.column = constant_value EŞITSIZLIK: Sütun, eşitsizliği ifade eden bir önleme katkıda bulunur; örneğin şu biçimdeki bir önlem: table.column>constant_value. "=" dışındaki herhangi bir karşılaştırma operatörü eşitsizliği ifade eder. DAHIL: Sütun bir yüklemi değerlendirmek için kullanılmaz, ancak başka bir sebep için, örneğin bir sorguyu kapsamak için kullanılır. |
Açıklamalar
Geri sys.dm_db_missing_index_columns dönen bilgiler, bir sorgu sorgu optimizörü tarafından optimize edildiğinde güncellenir ve kalıcı olmaz. Eksik indeks bilgisi yalnızca veritabanı motoru yeniden başlatılana kadar saklanır. Veritabanı yöneticileri, eksik indeks bilgilerini sunucu geri dönüşümünden sonra korumak istiyorlarsa periyodik olarak yedek kopyalarını almalıdır.
sqlserver_start_time Son veritabanı altyapısı başlangıç zamanını bulmak için sys.dm_os_sys_info sütununu kullanın.
İşlem Tutarlılığı
Bir işlem bir tablo oluşturuyor veya düşürürse, düşürülen nesnelere dair eksik indeks bilgisini içeren satırlar bu dinamik yönetim nesnesinden çıkarılır ve işlem tutarlılığı korunur.
Permissions
Kullanıcılara, bu dinamik yönetim fonksiyonunu sorgulamak için VIEW SERVER STATE izni veya VIEW SERVER STATE'in izni verilmesi gerekir.
SQL Server 2022 ve üzeri için izinler
Sunucuda SUNUCU PERFORMANS DURUMUNU GÖRÜNTÜLE izni gerektirir.
Örnekler
Aşağıdaki örnek, tabloya karşı bir sorgu Address çalıştırır ve ardından dinamik yönetim görünümünü sys.dm_db_missing_index_columns kullanarak indeks eksik tablo sütunlarını döndürmek için bir sorgu çalıştırır.
USE AdventureWorks2022;
GO
SELECT City, StateProvinceID, PostalCode
FROM Person.Address
WHERE StateProvinceID = 9;
GO
SELECT mig.*, statement AS table_name,
column_id, column_name, column_usage
FROM sys.dm_db_missing_index_details AS mid
CROSS APPLY sys.dm_db_missing_index_columns (mid.index_handle)
INNER JOIN sys.dm_db_missing_index_groups AS mig ON mig.index_handle = mid.index_handle
ORDER BY mig.index_group_handle, mig.index_handle, column_id;
GO
Eksik indeks önerileri mümkün olduğunda birbirleriyle ve mevcut veritabanındaki mevcut indekslerle birleştirilmelidir. Bu önerileri, eksik indeks önerileriyle kümelenmiş olmayan indeksleri uyumlu şekilde nasıl uygulayacağınızı öğrenin.
Sonraki Adımlar
Eksik indeks özelliği hakkında daha fazla bilgiyi aşağıdaki makalelerde bulabilirsiniz:
- Kümelenmemiş dizinleri eksik indeks önerileri kullanarak iyileştirin
- sys.dm_db_missing_index_details (Transact-SQL)
- sys.dm_db_missing_index_groups (Transact-SQL)
- sys.dm_db_missing_index_group_stats (Transact-SQL)
- sys.dm_db_missing_index_group_stats_query (Transact-SQL)
- sys.dm_os_sys_info (Transact-SQL)