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 2016 (13.x) ve sonraki sürümleri
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Microsoft Fabric'te Azure Synapse Analytics
SQL veritabanı
Bu komut, tek tek veritabanı düzeyinde
Önemli
SQL Server veya Azure hizmetlerinin farklı sürümlerinde farklı DATABASE SCOPED CONFIGURATION
seçenekleri desteklenir. Bu sayfada tüm
Aşağıdaki ayarlar Azure SQL Veritabanı, Microsoft Fabric'teki SQL veritabanı, Azure SQL Yönetilen Örneği ve SQL Server'da,
- Yordam önbelleğini temizleyin.
- MAXDOP parametresini, söz konusu iş yükü için en iyi sonucu veren öğeye göre birincil veritabanı için önerilen bir değere (1, 2, ...) ayarlayın ve raporlama sorguları tarafından kullanılan ikincil çoğaltma veritabanları için farklı bir değer ayarlayın. MAXDOP seçme yönergeleri için Sunucu yapılandırması: en yüksek paralellik derecesisayfasını gözden geçirin.
- Veritabanından bağımsız olarak sorgu iyileştirici kardinalitesi tahmin modelini uyumluluk düzeyine ayarlayın.
- Veritabanı düzeyinde parametre algılamayı etkinleştirin veya devre dışı bırakın.
- Veritabanı düzeyinde sorgu iyileştirme düzeltmelerini etkinleştirin veya devre dışı bırakın.
- Veritabanı düzeyinde kimlik önbelleğini etkinleştirin veya devre dışı bırakın.
- Toplu iş ilk kez derlendiğinde önbellekte depolanacak derlenmiş plan saplama özelliğini etkinleştirin veya devre dışı bırakın.
- Yerel olarak derlenmiş Transact-SQL modülleri için yürütme istatistikleri koleksiyonunu etkinleştirin veya devre dışı bırakın.
-
ONLINE =
söz dizimini destekleyen DDL deyimleri için varsayılan olarak çevrimiçi seçenekleri etkinleştirin veya devre dışı bırakın. -
RESUMABLE =
söz dizimini destekleyen DDL deyimleri için varsayılan olarak devam ettirilebilir seçenekleri etkinleştirin veya devre dışı bırakın. - Akıllı sorgu işleme özellikleri
etkinleştirin veya devre dışı bırakın. - Hızlandırılmış plan zorlamayı etkinleştirin veya devre dışı bırakın.
- Genel geçici tabloların otomatik damla işlevini etkinleştirin veya devre dışı bırakın.
- basit sorgu profili oluşturma altyapısınıetkinleştirin veya devre dışı bırakın.
- Yeni
String or binary data would be truncated
hata iletisini etkinleştirin veya devre dışı bırakın. - sys.dm_exec_query_plan_stats'de son gerçek yürütme planının koleksiyonunu etkinleştirin veya devre dışı bırakın.
- Veritabanı Altyapısı tarafından otomatik olarak durdurulmadan önce duraklatılmış bir devam ettirilebilir dizin işleminin duraklatıldığı dakika sayısını belirtin.
- Zaman uyumsuz istatistik güncelleştirmesi için düşük öncelikli kilit beklemeyi etkinleştirin veya devre dışı bırakın.
- Kayıt defteri özetlerini Azure Blob Depolama'ya yüklemeyi etkinleştirin veya devre dışı bırakın.
- İyileştirilmiş Cadılar Bayramı korumasını etkinleştirin veya devre dışı bırakın.
Bu ayar yalnızca Azure Synapse Analytics'te kullanılabilir.
- Kullanıcı veritabanının uyumluluk düzeyini ayarlama
Transact-SQL söz dizimi kuralları
Sözdizimi
-- Syntax for SQL Server, Azure SQL Database and Azure SQL Managed Instance
ALTER DATABASE SCOPED CONFIGURATION
{
{ [ FOR SECONDARY] SET <set_options>}
}
| CLEAR PROCEDURE_CACHE [plan_handle]
| SET < set_options >
[;]
< set_options > ::=
{
MAXDOP = { <value> | PRIMARY}
| LEGACY_CARDINALITY_ESTIMATION = { ON | OFF | PRIMARY}
| PARAMETER_SNIFFING = { ON | OFF | PRIMARY}
| QUERY_OPTIMIZER_HOTFIXES = { ON | OFF | PRIMARY}
| IDENTITY_CACHE = { ON | OFF }
| INTERLEAVED_EXECUTION_TVF = { ON | OFF }
| BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }
| BATCH_MODE_ADAPTIVE_JOINS = { ON | OFF }
| TSQL_SCALAR_UDF_INLINING = { ON | OFF }
| ELEVATE_ONLINE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
| ELEVATE_RESUMABLE = { OFF | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
| OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | OFF }
| XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | OFF }
| XTP_QUERY_EXECUTION_STATISTICS = { ON | OFF }
| ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | OFF }
| MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT = { ON | OFF }
| MEMORY_GRANT_FEEDBACK_PERSISTENCE = { ON | OFF }
| BATCH_MODE_ON_ROWSTORE = { ON | OFF }
| DEFERRED_COMPILATION_TV = { ON | OFF }
| ACCELERATED_PLAN_FORCING = { ON | OFF }
| GLOBAL_TEMPORARY_TABLE_AUTO_DROP = { ON | OFF }
| LIGHTWEIGHT_QUERY_PROFILING = { ON | OFF }
| VERBOSE_TRUNCATION_WARNINGS = { ON | OFF }
| LAST_QUERY_PLAN_STATS = { ON | OFF }
| PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES = <time>
| ISOLATE_SECURITY_POLICY_CARDINALITY = { ON | OFF }
| EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS = { ON | OFF }
| ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY = { ON | OFF }
| OPTIMIZED_PLAN_FORCING = { ON | OFF }
| DOP_FEEDBACK = { ON | OFF }
| CE_FEEDBACK = { ON | OFF }
| PARAMETER_SENSITIVE_PLAN_OPTIMIZATION = { ON | OFF }
| LEDGER_DIGEST_STORAGE_ENDPOINT = { <endpoint URL string> | OFF }
| OPTIMIZED_SP_EXECUTESQL = { ON | OFF }
| OPTIMIZED_HALLOWEEN_PROTECTION = { ON | OFF }
| OPTIONAL_PARAMETER_PLAN_OPTIMIZATION = { ON | OFF }
}
-- Syntax for Azure Synapse Analytics
ALTER DATABASE SCOPED CONFIGURATION
{
SET <set_options>
}
[;]
< set_options > ::=
{
DW_COMPATIBILITY_LEVEL = { AUTO | 10 | 20 | 30 | 40 | 50 | 9000 }
}
Bağımsız değişken
İKINCIL IÇIN
İkincil veritabanlarının ayarlarını belirtir (tüm ikincil veritabanları aynı değerlere sahip olmalıdır).
CLEAR PROCEDURE_CACHE [plan_handle]
Veritabanı için yordam (plan) önbelleğini temizler ve hem birincil hem de ikincillerde yürütülebilir.
Tek bir sorgu planını plan önbelleğinden temizlemek için bir sorgu planı tanıtıcısı belirtin.
Şunlar için geçerlidir: Sql Server 2019 (15.x), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği ile başlayarak sorgu planı tanıtıcısı belirtme özelliği kullanılabilir.
MAXDOP = {<değer> | BİRİnCİl }
<değer>
Deyimler için kullanılması gereken varsayılan maksimum paralellik derecesi (MAXDOP) ayarını belirtir. 0 varsayılan değerdir ve bunun yerine sunucu yapılandırmasının kullanıldığını gösterir. Veritabanı kapsamındaki MAXDOP, tarafından sunucu düzeyinde ayarlanan sp_configure
(0 olarak ayarlanmadığı sürece) geçersiz kılar. Sorgu ipuçları, farklı ayar gerektiren belirli sorguları ayarlamak için veritabanı kapsamlı MAXDOP'yi geçersiz kılmaya devam edebilir. Tüm bu ayarlar, İş Yükü Grubuiçin ayarlanan MAXDOP ile sınırlıdır.
Paralel plan yürütmede kullanılacak işlemci sayısını sınırlamak için MAXDOP seçeneğini kullanabilirsiniz. SQL Server sorgular, dizin veri tanımı dili (DDL) işlemleri, paralel ekleme, çevrimiçi alter sütunu, paralel istatistik koleksiyonu ve statik ve anahtar kümesi temelli imleç popülasyonu için paralel yürütme planlarını dikkate alır.
maksimum paralellik derecesi (MAXDOP) sınırı, görevbaşına ayarlanır. Bu, başına istek veya sorgu sınırı başına değildir. Bu, paralel sorgu yürütme sırasında tek bir isteğin zamanlayıcıatanmış birden çok görev oluşturabileceği anlamına gelir. Daha fazla bilgi için bkz. İş Parçacığı ve Görev Mimarisi Kılavuzu.
Bu seçeneği örnek düzeyinde ayarlamak için bkz. En yüksek paralellik derecesini yapılandırma Sunucu Yapılandırma Seçeneği.
Azure SQL Veritabanı'nda, yeni tek ve elastik havuz veritabanları için MAXDOP veritabanı kapsamlı yapılandırma varsayılan olarak 8 olarak ayarlanır. Azure SQL Veritabanı'nda MAXDOP'yi en iyi şekilde yapılandırma hakkında daha fazla bilgi ve öneri için bkz. Azure SQL Veritabanı'nda MAXDOP'yi yapılandırma.
Bahşiş
Bunu sorgu düzeyinde gerçekleştirmek için MAXDOPsorgu ipucunukullanın.
Bunu sunucu düzeyinde gerçekleştirmek için
Bunu iş yükü düzeyinde gerçekleştirmek için
BİRİNCİL
Veritabanı birincil sunucudayken yalnızca ikinciller için ayarlanabilir ve yapılandırmanın birincil için ayarlanan yapılandırma olduğunu gösterir. Birincil yapılandırma değişirse, ikinciller üzerindeki değer, ikincil değeri açıkça ayarlamaya gerek kalmadan buna göre değişir. PRIMARY, ikinciller için varsayılan ayardır.
LEGACY_CARDINALITY_ESTIMATION = { ON | KAPALI | BİRİnCİl }
Sorgu iyileştirici kardinalitesi tahmin modelini veritabanının uyumluluk düzeyinden bağımsız olarak SQL Server 2012 ve önceki sürümüne ayarlamanıza olanak tanır. Varsayılan değer, veritabanının uyumluluk düzeyine göre sorgu iyileştirici kardinalitesi tahmin modelini ayarlayan OFF
değeridir.
LEGACY_CARDINALITY_ESTIMATION
ON
olarak ayarlamak, İzleme Bayrağı 9481'ietkinleştirmeye eşdeğerdir.
Bahşiş
Bunu sorgu düzeyinde gerçekleştirmek için QUERYTRACEONsorgu ipucunuekleyin. SQL Server 2016 (13.x) SP1'den başlayarak, bunu sorgu düzeyinde gerçekleştirmek için izleme bayrağı yerine USE HINTsorgu ipucu ekleyin.
BİRİNCİL
Bu değer yalnızca birincil üzerindeki veritabanı içindeyken ikincillerde geçerlidir ve tüm ikincillerdeki sorgu iyileştirici kardinalitesi tahmin modeli ayarının birincil için ayarlanan değer olduğunu belirtir. Sorgu iyileştirici kardinalitesi tahmin modeli için birincil yapılandırma değişirse, ikinciller üzerindeki değer buna göre değişir. PRIMARY, ikinciller için varsayılan ayardır.
PARAMETER_SNIFFING = { ON | KAPALI | BİRİnCİl }
parametre algılamayıetkinleştirir veya devre dışı bırakır. Varsayılan değer ON
.
PARAMETER_SNIFFING
OFF
olarak ayarlanması, İzleme Bayrağı 4136'nin etkinleştirilmesine eşdeğerdir.
Bahşiş
Bunu sorgu düzeyinde gerçekleştirmek içinOPTIMIZE FOR UNKNOWN
sorgu ipucuna bakın.
SQL Server 2016 (13.x) SP1 ve sonraki sürümlerinde bunu sorgu düzeyinde gerçekleştirmek için USE HINT
sorgu ipucu de kullanılabilir.
BİRİNCİL
Bu değer yalnızca birincil üzerindeki veritabanı içindeyken ikincillerde geçerlidir ve tüm ikincil ayarlarda bu ayarın değerinin birincil değer için ayarlanan değer olduğunu belirtir. parametre algılama kullanmak için birincil yapılandırma değişirse, ikincil değerleri açıkça ayarlamaya gerek kalmadan ikinciller üzerindeki değer buna göre değişir. BİRİnCİl, ikinciller için varsayılan ayardır.
QUERY_OPTIMIZER_HOTFIXES = { ON | KAPALI | BİRİnCİl }
Veritabanının uyumluluk düzeyinden bağımsız olarak sorgu iyileştirme düzeltmelerini etkinleştirir veya devre dışı bırakır. Varsayılan değer OFF
'dir. Bu, belirli bir sürüm için (RTM sonrası) kullanılabilir en yüksek uyumluluk düzeyi eklendikten sonra yayımlanan sorgu iyileştirme düzeltmelerini devre dışı bırakır. Bunu ON
olarak ayarlamak, İzleme Bayrağı 4199'unetkinleştirilmesine eşdeğerdir.
Şunlar için geçerlidir: SQL Server (SQL Server 2016 (13.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bahşiş
Bunu sorgu düzeyinde gerçekleştirmek için QUERYTRACEONsorgu ipucunuekleyin. SQL Server 2016 (13.x) SP1'den başlayarak, bunu sorgu düzeyinde gerçekleştirmek için izleme bayrağını kullanmak yerine USE HINT sorgu ipucu ekleyin.
BİRİNCİL
Bu değer yalnızca birincil üzerindeki veritabanı içindeyken ikincillerde geçerlidir ve tüm ikincil ayarlarda bu ayarın değerinin birincil değer için ayarlanan değer olduğunu belirtir. Birincil yapılandırma değişirse, ikinciller üzerindeki değer, ikincil değeri açıkça ayarlamaya gerek kalmadan buna göre değişir. BİRİnCİl, ikinciller için varsayılan ayardır.
IDENTITY_CACHE = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2017 (14.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanı düzeyinde kimlik önbelleğini etkinleştirir veya devre dışı bırakır. Varsayılan değer ON
. Kimlik önbelleğe alma, kimlik sütunları olan tablolarda INSERT performansını geliştirmek için kullanılır. Sunucunun beklenmedik bir şekilde yeniden başlatıldığı veya ikincil sunucuya yük devredildiği durumlarda kimlik sütununun değerlerinde boşluk oluşmasını önlemek için IDENTITY_CACHE
seçeneğini devre dışı bırakın. Bu seçenek, var olan İzleme Bayrağı 272benzer, ancak yalnızca sunucu düzeyinde değil veritabanı düzeyinde ayarlanabilir.
Not
Bu seçenek yalnızca BİRİnCİl için ayarlanabilir. Daha fazla bilgi için bkz.kimlik sütunlarını
INTERLEAVED_EXECUTION_TVF = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanı uyumluluk düzeyi 140 ve üzerini korurken veritabanında veya deyim kapsamında çok deyimli tablo değerli işlevler için Araya kaydedilen yürütmeyi etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer ON
. Araya eklenen yürütme, Azure SQL Veritabanı'nda Uyarlamalı sorgu işlemenin bir parçası olan bir özelliktir. Daha fazla bilgi için bkz. Intelligent query processing.
Not
Veritabanı uyumluluk düzeyi 130 veya daha düşük olan bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
Yalnızca SQL Server 2017'de (14.x), INTERLEAVED_EXECUTION_TVF seçeneği DISABLE_INTERLEAVED_EXECUTION_TVF eski adını içeriyordu.
BATCH_MODE_MEMORY_GRANT_FEEDBACK = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanı uyumluluk düzeyi 140 ve üzerini korurken veritabanı kapsamında geri bildirim vermek için toplu iş modu belleğini etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer ON
. SQL Server 2017'de (14.x) sunulan toplu iş modu bellek verme geri bildirimi, akıllı sorgu işleme özellik paketinin bir parçasıdır. Daha fazla bilgi için bkz. Bellek verme geri bildirimi.
Not
Veritabanı uyumluluk düzeyi 130 veya daha düşük olan bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
BATCH_MODE_ADAPTIVE_JOINS = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanı uyumluluk düzeyi 140 ve üzerini korurken veritabanı kapsamında toplu iş modu uyarlamalı birleşimlerini etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer ON
. Toplu işlem modu uyarlamalı birleşimleri, SQL Server 2017'de (14.x) kullanıma sunulan Akıllı sorgu işleme parçası olan bir özelliktir.
Not
Veritabanı uyumluluk düzeyi 130 veya daha düşük olan bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
TSQL_SCALAR_UDF_INLINING = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak) ve Azure SQL Veritabanı (özellik önizleme aşamasındadır)
Veritabanı uyumluluk düzeyi 150 ve üzerini korurken veritabanı kapsamında T-SQL Scalar UDF'yi etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer ON
. T-SQL Scalar UDF inlining, Intelligent sorgu işleme özellik ailesinin bir parçasıdır.
Not
Veritabanı uyumluluk düzeyi 140 veya daha düşükse, bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
ELEVATE_ONLINE = { KAPALI | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Altyapının desteklenen işlemleri otomatik olarak çevrimiçine yükseltmesine neden olacak seçenekleri belirlemenize olanak tanır. Varsayılan değer OFF
değeridir. Bu, deyimde belirtilmediği sürece işlemlerin çevrimiçi olarak yükseltilmediği anlamına gelir.
sys.database_scoped_configurationsELEVATE_ONLINE
geçerli değerini yansıtır. Bu seçenekler yalnızca çevrimiçi için desteklenen işlemler için geçerlidir.
FAIL_UNSUPPORTED
Bu değer, desteklenen tüm DDL işlemlerini ÇEVRİmİÇİ olarak yükseltir. Çevrimiçi yürütmeyi desteklemeyen işlemler başarısız olur ve hata oluşturur.
Not
Tabloya sütun eklemek, genel örnekte çevrimiçi bir işlemdir. Bazı senaryolarda, örneğin null atanamayan bir sütun eklendiğindebir sütun çevrimiçi olarak eklenemez. Böyle durumlarda, FAIL_UNSUPPORTED ayarlanırsa işlem başarısız olur.
WHEN_SUPPORTED
Bu değer, ÇEVRİmİÇİ'leri destekleyen işlemleri yükseltir. Çevrimiçi desteği olmayan işlemler çevrimdışı çalıştırılır.
Not
BELIRTILEN ÇEVRİmİÇİ seçeneğiyle bir deyim göndererek varsayılan ayarı geçersiz kılabilirsiniz.
ELEVATE_RESUMABLE= { KAPALI | WHEN_SUPPORTED | FAIL_UNSUPPORTED }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Altyapının desteklenen işlemleri otomatik olarak yeniden devam ettirilebilir duruma getirmesine neden olacak seçenekleri belirlemenize olanak tanır. Varsayılan değer OFF
değeridir. Bu, deyimde belirtilmediği sürece işlemlerin devam ettirilemeyecek şekilde yükseltilmediği anlamına gelir.
sys.database_scoped_configurationsELEVATE_RESUMABLE
geçerli değerini yansıtır. Bu seçenekler yalnızca devam ettirilebilir işlemler için geçerlidir.
FAIL_UNSUPPORTED
Bu değer, desteklenen tüm DDL işlemlerini RESUMABLE'a yükseltir. Devam ettirilebilen yürütmeyi desteklemeyen işlemler başarısız olur ve hata oluşturur.
WHEN_SUPPORTED
Bu değer, RESUMABLE'i destekleyen işlemleri yükseltir. Devam ettirilebilir'i desteklemeyen işlemler yanıtsız çalıştırılır.
Not
RESUMABLE seçeneği belirtilen bir deyimi göndererek varsayılan ayarı geçersiz kılabilirsiniz.
OPTIMIZE_FOR_AD_HOC_WORKLOADS = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bir toplu iş ilk kez derlendiğinde, derlenmiş plan saplamanın önbellekte depolanmasını etkinleştirir veya devre dışı bırakır. Varsayılan değer OFF
. Veritabanı kapsamlı yapılandırma OPTIMIZE_FOR_AD_HOC_WORKLOADS
bir veritabanı için etkinleştirildikten sonra, toplu iş ilk kez derlendiğinde derlenmiş plan saplaması önbellekte depolanır. Plan saplamaları, tam derlenmiş planın boyutuna kıyasla daha küçük bir bellek ayak izine sahiptir. Bir toplu iş yeniden derlenmiş veya yürütülürse, derlenen plan saplaması kaldırılır ve tam derlenmiş bir planla değiştirilir.
XTP_PROCEDURE_EXECUTION_STATISTICS = { ON | KAPALI }
Şunlar için geçerlidir: Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Geçerli veritabanında yerel olarak derlenmiş T-SQL modülleri için modül düzeyinde yürütme istatistiklerinin toplanmasını etkinleştirir veya devre dışı bırakır. Varsayılan değer OFF
. Yürütme istatistikleri sys.dm_exec_procedure_statsyansıtılır.
Yerel olarak derlenmiş T-SQL modülleri için modül düzeyinde yürütme istatistikleri, bu seçenek ON ise veya istatistik koleksiyonu sp_xtp_control_proc_exec_statsaracılığıyla etkinleştirildiyse toplanır.
XTP_QUERY_EXECUTION_STATISTICS = { ON | KAPALI }
Şunlar için geçerlidir: Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Geçerli veritabanında yerel olarak derlenmiş T-SQL modülleri için deyim düzeyinde yürütme istatistikleri toplamayı etkinleştirir veya devre dışı bırakır. Varsayılan değer OFF
. Yürütme istatistikleri sys.dm_exec_query_stats ve Sorgu Deposuyansıtılır.
Yerel olarak derlenmiş T-SQL modülleri için deyim düzeyinde yürütme istatistikleri, bu seçenek ON
ise veya istatistik koleksiyonu sp_xtp_control_query_exec_statsaracılığıyla etkinleştirilirse toplanır.
Yerel olarak derlenmiş Transact-SQL modüllerinin performans izlemesi hakkında daha fazla bilgi için bkz. Yerel Olarak Derlenmiş Saklı Yordamların Performansını İzleme.
ROW_MODE_MEMORY_GRANT_FEEDBACK = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanı uyumluluk düzeyi 150 ve üzerini korurken veritabanı kapsamında satır modu belleğini etkinleştirmenize veya devre dışı bırakmanıza izin verir. Varsayılan değer ON
. Satır modu belleği, SQL Server 2017'de (14.x) kullanıma sunulan Akıllı sorgu işleme parçası olan bir özelliği geri bildirime verir. Satır modu SQL Server 2019 (15.x) ve Azure SQL Veritabanı'nda desteklenir. Bellek verme geri bildirimi hakkında daha fazla bilgi için bkz. Bellek verme geri bildirimi.
Not
Veritabanı uyumluluk düzeyi 140 veya daha düşükse, bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı
Veritabanından kaynaklanan tüm sorgu yürütmeleri için bellek verme geri bildirim yüzdebirlik değerini devre dışı bırakmanızı sağlar. Varsayılan değer ON
. Tam bilgi için bkz. Yüzdebirlik ve kalıcılık modu bellekgeri bildirim verme.
Not
Veritabanı uyumluluk düzeyi 140 veya daha düşükse, bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
MEMORY_GRANT_FEEDBACK_PERSISTENCE = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanından kaynaklanan tüm sorgu yürütmeleri için bellek verme geri bildirim kalıcılığını devre dışı bırakmanızı sağlar. Varsayılan değer ON
. Tam bilgi için bkz. Yüzdebirlik ve kalıcılık modu bellekgeri bildirim verme.
Not
Veritabanı uyumluluk düzeyi 140 veya daha düşükse, bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
BATCH_MODE_ON_ROWSTORE = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanı uyumluluk düzeyi 150 ve üzerini korurken veritabanı kapsamındaki satır deposunda toplu iş modunu etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer ON
. Rowstore'da toplu iş modu, akıllı sorgu işleme özellik ailesinin
Not
Veritabanı uyumluluk düzeyi 140 veya daha düşükse, bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
DEFERRED_COMPILATION_TV = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Veritabanı uyumluluk düzeyi 150 ve üzerini korurken veritabanı kapsamında tablo değişkeni ertelenen derlemeyi etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer ON
. Tablo değişkeni ertelenen derleme, Akıllı sorgu işleme özellik ailesinin parçası olan bir özelliktir.
Not
Veritabanı uyumluluk düzeyi 140 veya daha düşükse, bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
ACCELERATED_PLAN_FORCING = { ON | KAPALI }
için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
ON
.
Not
Hızlandırılmış plan zorlamanın devre dışı bırakılması önerilmez.
GLOBAL_TEMPORARY_TABLE_AUTO_DROP = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
ON
, genel geçici tabloların herhangi bir oturum veya görev tarafından kullanılmadığında otomatik olarak bırakıldığı anlamına gelir.
OFF
olarak ayarlandığında, genel geçici tablolar yalnızca bir DROP TABLE
deyimi kullanılarak açıkça bırakılabilir veya Veritabanı Altyapısı yeniden başlatıldığında otomatik olarak bırakılabilir.
- Azure SQL Veritabanı tek veritabanlarında ve elastik havuzlarda bu seçenek tek tek kullanıcı veritabanlarında ayarlanır.
- SQL Server ve Azure SQL Yönetilen Örneği'nde bu seçenek
tempdb
içinde ayarlanmalıdır. Tek tek kullanıcı veritabanlarındaki ayarın hiçbir etkisi yoktur.
LIGHTWEIGHT_QUERY_PROFILING = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
basit sorgu profili oluşturma altyapısınıetkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Basit sorgu profili oluşturma altyapısı (LWP), sorgu performansı verilerini standart profil oluşturma mekanizmalarından daha verimli bir şekilde sağlar ve varsayılan olarak etkindir. Varsayılan değer ON
.
VERBOSE_TRUNCATION_WARNINGS = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Yeni String or binary data would be truncated
hata iletisini etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer ON
. SQL Server 2019 (15.x), bu senaryo için yeni, daha belirgin bir hata iletisi (2628) ekler:
String or binary data would be truncated in table '%.*ls', column '%.*ls'. Truncated value: '%.*ls'.
Veritabanı uyumluluk düzeyi 150 altında ON
olarak ayarlandığında, kesme hataları daha fazla bağlam sağlamak ve sorun giderme işlemini basitleştirmek için yeni hata iletisi 2628'i oluşturur.
Veritabanı uyumluluk düzeyi 150 altında OFF
olarak ayarlandığında, kesme hataları önceki hata iletisini 8152'ye getirir.
Veritabanı uyumluluk düzeyi 140 veya daha düşük olduğunda, hata iletisi 2628, İzleme Bayrağı 460 etkinleştirilmesini gerektiren bir kabul hata iletisi olarak kalır ve bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
LAST_QUERY_PLAN_STATS = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
sys.dm_exec_query_plan_statsiçinde son sorgu planı istatistiklerinin (gerçek yürütme planına eşdeğer) toplanmasını etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. Varsayılan değer OFF
.
PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES
seçeneği, devam ettirilebilen dizinin altyapı tarafından otomatik olarak durdurulmadan önce ne kadar süreyle duraklatıldığını (dakika cinsinden) belirler.
- Varsayılan değer bir gün (1440 dakika) olarak ayarlanır
- En düşük süre 1 dakika olarak ayarlanır
- Maksimum süre 71.582 dakikadır
- 0 olarak ayarlandığında, duraklatılan bir işlem hiçbir zaman otomatik olarak durdurulmaz
Bu seçeneğin geçerli değeri sys.database_scoped_configurationsiçinde görüntülenir.
ISOLATE_SECURITY_POLICY_CARDINALITY = { ON | KAPALI}
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Row-Level Güvenlik (RLS) koşulunun genel kullanıcı sorgusunun yürütme planının kardinalitesini etkileyip etkilemediğini denetlemenize olanak tanır. Varsayılan değer OFF
.
ISOLATE_SECURITY_POLICY_CARDINALITY
ON olduğunda, RLS koşulu yürütme planının kardinalitesini etkilemez. Örneğin, 1 milyon satır içeren bir tablo ve sorguyu veren belirli bir kullanıcı için sonucu 10 satırla kısıtlayan bir RLS koşulu düşünün. Bu veritabanı kapsamlı yapılandırma KAPALI olarak ayarlandığında, bu koşulun kardinalite tahmini 10'dur. Bu veritabanı kapsamlı yapılandırma ON olduğunda, sorgu iyileştirmesi 1 milyon satır tahmin eder. Çoğu iş yükü için varsayılan değerin kullanılması önerilir.
DW_COMPATIBILITY_LEVEL = { AUTO | 10 | 20 | 30 | 40 | 50 | 9000 }
Şunlar için geçerlidir: Yalnızca Azure Synapse Analytics'i
Transact-SQL ve sorgu işleme davranışlarını veritabanı altyapısının belirtilen sürümüyle uyumlu olacak şekilde ayarlar. Ayarlandıktan sonra, bu veritabanında bir sorgu yürütülürse yalnızca uyumlu özellikler uygulanır. Her uyumluluk düzeyinde çeşitli sorgu işleme geliştirmeleri desteklenir. Her düzey, önceki düzeyin işlevselliğini alır. Veritabanının uyumluluk düzeyi, ilk oluşturulduğunda varsayılan olarak AUTO olarak ayarlanır ve önerilen ayar budur. Veritabanı duraklatma/sürdürme, yedekleme/geri yükleme işlemlerinde bile uyumluluk düzeyi korunur. Varsayılan değer AUTO
.
Uyumluluk Düzeyi | Yorum |
---|---|
AUTO |
Temerrüt. Değeri Synapse Analytics altyapısı tarafından otomatik olarak güncelleştirilir ve 0 içindeki ile temsil edilir.
AUTO şu anda uyumluluk düzeyi 30 işlevselliğiyle eşlenmektedir. |
10 |
Uyumluluk düzeyi desteğinin kullanıma sunulmasından önce Transact-SQL ve sorgu altyapısı davranışlarını uygular. |
20 |
Geçitli Transact-SQL ve sorgu altyapısı davranışlarını içeren ilk uyumluluk düzeyi. Sistem saklı yordamı sp_describe_undeclared_parameters bu düzey altında desteklenir. |
30 |
Yeni sorgu altyapısı davranışlarını içerir. |
40 |
Yeni sorgu altyapısı davranışlarını içerir. |
50 |
Çok Sütunlu Dağıtım bu düzey altında desteklenir. Daha fazla bilgi edinmek için bkz. CREATE TABLE |
9000 |
Önizleme uyumluluk düzeyi. Bu düzey altında geçişli önizleme özellikleri, özelliğe özgü belgelerde vurgulanmıştır. Bu düzey,9000 olmayan en yüksek düzeydeki yetenekleri de içerir. |
EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server 2022 (16.x) ve sonraki sürümleri, Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Skaler kullanıcı tanımlı işlevlerin (UDF) yürütme istatistiklerinin sys.dm_exec_function_stats sistem görünümünde görüntülenip görüntülenmeyeceğini denetlemenize olanak tanır. Skaler UDF yoğunluklu bazı yoğun iş yükleri için işlev yürütme istatistiklerinin toplanması dikkat çekici bir performans yüküne neden olabilir. Veritabanı kapsamlı EXEC_QUERY_STATS_FOR_SCALAR_FUNCTIONS
yapılandırması OFF
olarak ayarlanarak bu durum önlenebilir. Varsayılan değer ON
.
ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Zaman uyumsuz istatistik güncelleştirmesi etkinleştirildiyse, bu yapılandırmanın etkinleştirilmesi, arka plan isteği güncelleştirme istatistiklerinin yüksek eşzamanlılık senaryolarındaki diğer oturumların engellenmesini önlemek için düşük öncelikli bir kuyrukta Sch-M
kilidini beklemesine neden olur. Daha fazla bilgi için bkz. AUTO_UPDATE_STATISTICS_ASYNC. Varsayılan değer OFF
.
OPTIMIZED_PLAN_FORCING = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı
İyileştirilmiş plan zorlaması, yinelenen zorlamalı sorgular için derleme ek yükünü azaltır. Varsayılan değer ON
. Sorgu yürütme planı oluşturulduktan sonra, iyileştirme yeniden yürütme betiği olarak yeniden kullanmak üzere belirli derleme adımları depolanır. İyileştirme yeniden yürütme betiği, gizli bir özniteliğinde OptimizationReplay
sıkıştırılmış showplan XML'in bir parçası olarak depolanır. Sorgu Deposuile en iyi duruma getirilmiş plan zorlama
DOP_FEEDBACK = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı
Geçen süreye ve beklemelere göre yinelenen sorgular için paralellik verimsizliklerini tanımlar. Paralellik kullanımı verimsiz olarak kabul edilirse, DOP geri bildirimi sorgunun bir sonraki yürütmesi için DOP'yi yapılandırılan DOP'dan düşürür ve yardımcı olup olmadığını doğrular. Sorgu Deposu'nu etkin ve READ_WRITE
modunda gerektirir. Daha fazla bilgi için bkz. Paralellik Derecesi (DOP) geri bildirimi. Varsayılan değer OFF
.
CE_FEEDBACK = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
CE geri bildirimi, varsayılan CE (CE120 veya üzeri) kullanılırken yanlış CE modeli varsayımlarından kaynaklanan algılanan regresyon sorunlarını giderir ve farklı model varsayımlarını seçmeli olarak kullanabilir. Sorgu Deposu'nu etkin ve READ_WRITE
modunda gerektirir. Daha fazla bilgi için bkz. Kardinalite tahmini (CE) geri bildirimi. Varsayılan değer, veritabanı uyumluluk düzeyi 160 ve üzeri ON
.
PARAMETER_SENSITIVE_PLAN_OPTIMIZATION = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Parametre duyarlılık planı (PSP) iyileştirmesi, parametreli sorgu için tek bir önbelleğe alınmış planın tüm olası gelen parametre değerleri için en uygun olmadığı senaryoyu ele alır. Bu durum, tek biçimli veri dağıtımlarında geçerlidir. Varsayılan değer, veritabanı uyumluluk düzeyi 160'tan başlayarak ON
. Daha fazla bilgi için bkz. Parametreye Duyarlı Plan iyileştirme.
LEDGER_DIGEST_STORAGE_ENDPOINT = { <uç nokta URL dizesi> | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak)
Kayıt defteri özetlerinin Azure Blob Depolama'ya yüklenmesini etkinleştirir veya devre dışı bırakır. Kayıt defteri özetlerinin karşıya yüklenmesini etkinleştirmek için Azure Blob depolama hesabının uç noktasını belirtin. Genel muhasebe özetlerinin karşıya yüklenmesini devre dışı bırakmak için seçenek değerini OFF
olarak ayarlayın. Varsayılan değer OFF
.
FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Basit sorgu yürütme istatistiklerini kullanarak altyapının profilini oluştururken veya uzun süre çalışan sorguların sorunlarını giderirken sys.dm_exec_query_statistics_xml
DMV'yi yürütürken SQL Server'ın ParameterRuntimeValue ile bir Showplan XML parçası oluşturmasına neden olur.
Önemli
FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION
veritabanı kapsamlı yapılandırma seçeneğinin üretim ortamında sürekli olarak etkinleştirilmesi amaçlanmamıştır, yalnızca zaman sınırlı sorun giderme amacıyla etkinleştirilmelidir. Bu veritabanı kapsamlı yapılandırma seçeneğinin kullanılması, sys.dm_exec_query_statistics_xml
DMV veya basit sorgu yürütme istatistikleri profil altyapısının etkinleştirilip etkinleştirilmediğine bakılmaksızın çalışma zamanı parametre bilgileriyle bir Showplan XML parçası oluşturduğumuz için ek ve büyük olasılıkla önemli CPU ve bellek yükü getirir.
OPTIMIZED_SP_EXECUTESQL = { ON | KAPALI }
Şunlar için geçerlidir: Microsoft Fabric'te SQL Server 2025 (17.x) Önizleme, Azure SQL Veritabanı ve SQL veritabanı
Bir toplu iş derlendiğinde sp_executesql
derleme serileştirme davranışını etkinleştirir veya devre dışı bırakır. Varsayılan değer OFF
. Derleme işlemini serileştirmek için sp_executesql
kullanan toplu işlere izin vermek, derleme fırtınalarının etkisini azaltır. Derleme fırtınaları, çok sayıda sorgunun aynı anda derlendiği ve performans sorunlarına ve kaynak çekişmesiyle sonuçlanan bir durum anlamına gelir.
OPTIMIZED_SP_EXECUTESQL
ON
olduğunda, sp_executesql ilk yürütmesi derlenmiş planını derler ve plan önbelleğine ekler. Diğer oturumlar derleme kilidinde beklemeyi durdurur ve kullanılabilir duruma geldikten sonra planı yeniden kullanabilir. Bu, sp_executesql
saklı yordamlar ve tetikleyiciler gibi derleme perspektifinden nesneler gibi davranmasına olanak tanır.
OPTIMIZED_HALLOWEEN_PROTECTION = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server 2025 (17.x) Önizlemesi
Veri değiştirme dili (DML) deyimleri için iyileştirilmiş Cadılar Bayramı korumasını etkinleştirir veya devre dışı bırakır. Varsayılan değer ON
. Etkinleştirildiğinde sorgu planında bir biriktirici işleci kullanmadan Cadılar Bayramı koruması sağlar.
Not
Veritabanı uyumluluk düzeyi 160 veya daha düşükse, bu veritabanı kapsamlı yapılandırmanın hiçbir etkisi yoktur.
OPTIONAL_PARAMETER_PLAN_OPTIMIZATION = { ON | KAPALI }
Şunlar için geçerlidir: SQL Server 2025 (17.x) Önizlemesi
İsteğe bağlı parametre planı iyileştirme özelliğini etkinleştirir veya devre dışı bırakır. Varsayılan değer ON
.
Etkinleştirildiğinde uyarlamalı plan iyileştirmesi, isteğe bağlı parametreler içeren sorgular için birden çok yürütme planı oluşturur. Bu planlar genellikle koşul kullanılarak şu şekilde ifade edilir:
@p IS NULL AND @p1 IS NOT NULL
@p IS NULL OR @p1 IS NOT NULL
Özellik, parametresinin NULL
olup olmadığına bağlı olarak çalışma zamanında daha uygun bir plan seçebilir ve bu da bu tür sorgu desenleri için varsayılan olarak en iyi olmayan performansa sahip sorgular için performansı artırır.
Varsayılan değer, ON
veritabanı uyumluluk düzeyi 170'te başlar.
İzinler
Veritabanında ALTER ANY DATABASE SCOPED CONFIGURATION
gerektirir. Bu izin, veritabanında CONTROL
izni olan bir kullanıcı tarafından verilebilir.
Açıklamalar
İkincil veritabanlarını birincil veritabanlarından farklı kapsamlı yapılandırma ayarlarına sahip olacak şekilde yapılandırabilirsiniz ancak tüm ikincil veritabanları aynı yapılandırmayı kullanır. Tek tek ikinciller için farklı ayarlar yapılandırılamaz.
Bu deyimin yürütülmesi geçerli veritabanındaki yordam önbelleğini temizler, yani tüm sorguların yeniden derlenmesi gerekir.
Üç bölümlü ad sorguları için, başka bir veritabanı bağlamında derlenen VE bu nedenle bulundukları veritabanının seçeneklerini kullanan SQL modülleri (yordamlar, işlevler ve tetikleyiciler gibi) dışında sorgunun geçerli veritabanı bağlantısına yönelik ayarlar kabul edilir. Benzer şekilde, istatistikleri zaman uyumsuz olarak güncelleştirirken, istatistiklerin bulunduğu veritabanı için ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY
ayarı uygulanır.
ALTER_DATABASE_SCOPED_CONFIGURATION
olayı, DDL tetikleyicisini tetiklemede kullanılabilecek bir DDL olayı olarak eklenir ve ALTER_DATABASE_EVENTS
tetikleyici grubunun alt öğesidir.
Belirli bir veritabanı geri yüklendiğinde veya eklendiğinde, veritabanı kapsamlı yapılandırma ayarları veritabanı üzerinde taşınır ve veritabanında kalır.
SQL Server 2019 (15.x) ile başlayarak Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği'nde bazı seçenek adları değiştirildi:
-
DISABLE_INTERLEAVED_EXECUTION_TVF
INTERLEAVED_EXECUTION_TVF
olarak değiştirildi -
DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK
BATCH_MODE_MEMORY_GRANT_FEEDBACK
olarak değiştirildi -
DISABLE_BATCH_MODE_ADAPTIVE_JOINS
BATCH_MODE_ADAPTIVE_JOINS
olarak değiştirildi
Veritabanı kapsamlı yapılandırma seçeneğinin durumunu denetleme
Veritabanında yapılandırmanın etkin (1) veya devre dışı (0) olup olmadığını denetlemek için sys.database_scoped_configurationssorgulayabilirsiniz. Örneğin, LEGACY_CARDINALITY_ESTIMATION
değerini denetlemek için aşağıdaki gibi bir sorgu kullanın:
USE <user_database>;
SELECT
name,
value,
value_for_secondary
FROM sys.database_scoped_configurations
WHERE name = 'LEGACY_CARDINALITY_ESTIMATION';
Sınırlama
MAXDOP
Ayrıntılı ayarlar genel ayarları geçersiz kılabilir ve kaynak yöneticisi diğer tüm MAXDOP ayarlarını kaplayabilir.
MAXDOP
ayarının mantığı aşağıdaki gibidir:
Sorgu ipucu hem
sp_configure
hem de veritabanı kapsamlı yapılandırmasını geçersiz kılar. MaxDOP kaynak grubu iş yükü grubu için ayarlandıysa:Sorgu ipucu sıfır (0) olarak ayarlanırsa, kaynak yöneticisi ayarı tarafından geçersiz kılınmış olur.
Sorgu ipucu sıfır (0) değilse, kaynak yöneticisi ayarı tarafından eşlenir.
Veritabanı kapsamlı yapılandırma (sıfır olmadığı sürece) sorgu ipucu olmadığı ve kaynak yöneticisi ayarıyla eşlenmediği sürece
sp_configure
ayarını geçersiz kılar.sp_configure
ayarı, kaynak yöneticisi ayarı tarafından geçersiz kılınabilir.
QUERY_OPTIMIZER_HOTFIXES
SQL Server 7.0'ın varsayılan Sorgu İyileştiricisi'ni SQL Server 2012 (11.x) sürümleri veya Sorgu İyileştiricisi düzeltmeleri aracılığıyla etkinleştirmek için QUERYTRACEON
ipucu kullanıldığında, sorgu ipucu ile veritabanı kapsamlı yapılandırma ayarı arasında bir OR koşulu olur; başka bir deyişle, veritabanı kapsamlı yapılandırmalar uygulanır.
Coğrafi DR
Okunabilir ikincil veritabanları (Always On Kullanılabilirlik Grupları, Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği coğrafi olarak çoğaltılan veritabanları), veritabanının durumunu denetleyerek ikincil değeri kullanır. Yeniden derleme yük devretme sırasında gerçekleşmese de ve teknik olarak yeni birincil sorgular ikincil ayarları kullanan sorgulara sahip olsa da, birincil ve ikincil arasındaki ayarın yalnızca iş yükü farklı olduğunda ve bu nedenle önbelleğe alınan sorgular en uygun ayarları kullandığında, yeni sorgular ise kendilerine uygun yeni ayarları seçer.
DacFx
ALTER DATABASE SCOPED CONFIGURATION
, Azure SQL Veritabanı'nda yeni bir özellik olduğundan, veritabanı şemasını etkileyen Azure SQL Yönetilen Örneği ve SQL Server (SQL Server 2016 (13.x) ile başlayarak, şemanın dışarı aktarmaları (verili veya verisiz) SQL Server 2012 (11.x) veya SQL Server 2014 (12.x) gibi eski bir SQL Server sürümüne aktarılamaz. Örneğin, bu yeni özelliği kullanan sql veritabanı veya SQL Server 2016 (13.x) veritabanından DACPAC veya BACPAC dışarı aktarma işlemi alt düzey sunucuya aktarılamaz.
ELEVATE_ONLINE
Bu seçenek yalnızca WITH (ONLINE = <syntax>)
destekleyen DDL deyimleri için geçerlidir. XML dizinleri etkilenmez.
ELEVATE_RESUMABLE
Bu seçenek yalnızca WITH (RESUMABLE = <syntax>)
destekleyen DDL deyimleri için geçerlidir. XML dizinleri etkilenmez.
Meta veriler
sys.database_scoped_configurations (Transact-SQL) sistem görünümü, veritabanı içindeki kapsamlı yapılandırmalar hakkında bilgi sağlar. Veritabanı kapsamlı yapılandırma seçenekleri yalnızca sys.database_scoped_configurations
sunucu genelindeki varsayılan ayarları geçersiz kıldıkları için gösterilir.
sys.configurations (Transact-SQL) sistem görünümü yalnızca sunucu genelindeki ayarları gösterir.
Örnekler
Bu örnekler ALTER DATABASE SCOPED CONFIGURATION
kullanımını gösterir.
A. İzin Ver
Bu örnek, kullanıcı ALTER DATABASE SCOPED CONFIGURATION
Joe
yürütmek için gereken izni verir.
GRANT ALTER ANY DATABASE SCOPED CONFIGURATION TO [Joe];
B. MAXDOP'i ayarlama
Bu örnekte birincil veritabanı için MAXDOP = 1 ve coğrafi çoğaltma senaryosunda ikincil veritabanı için MAXDOP = 4 ayarlanmıştır.
ALTER DATABASE SCOPED CONFIGURATION
SET MAXDOP = 1;
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET MAXDOP = 4;
Bu örnek, ikincil bir veritabanı için MAXDOP'yi coğrafi çoğaltma senaryosundaki birincil veritabanı için ayarlananla aynı olacak şekilde ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET MAXDOP = PRIMARY;
C. LEGACY_CARDINALITY_ESTIMATION ayarlama
Bu örnek, coğrafi çoğaltma senaryosunda ikincil veritabanı için LEGACY_CARDINALITY_ESTIMATION
ON
olarak ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET LEGACY_CARDINALITY_ESTIMATION = ON;
Bu örnek, coğrafi çoğaltma senaryosundaki birincil veritabanı için olduğu gibi ikincil veritabanı için LEGACY_CARDINALITY_ESTIMATION
ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET LEGACY_CARDINALITY_ESTIMATION = PRIMARY;
D. PARAMETER_SNIFFING ayarlama
Bu örnek, coğrafi çoğaltma senaryosunda birincil veritabanı için PARAMETER_SNIFFING
OFF
olarak ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
SET PARAMETER_SNIFFING = OFF;
Bu örnek, coğrafi çoğaltma senaryosunda ikincil veritabanı için PARAMETER_SNIFFING
OFF
olarak ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET PARAMETER_SNIFFING = OFF;
Bu örnek, coğrafi çoğaltma senaryosunda birincil veritabanında olduğu gibi ikincil veritabanı için PARAMETER_SNIFFING
ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
FOR SECONDARY
SET PARAMETER_SNIFFING = PRIMARY;
E. QUERY_OPTIMIZER_HOTFIXES ayarlama
Coğrafi çoğaltma senaryosunda birincil veritabanı için QUERY_OPTIMIZER_HOTFIXES
ON
olarak ayarlayın.
ALTER DATABASE SCOPED CONFIGURATION
SET QUERY_OPTIMIZER_HOTFIXES = ON;
F. Yordam Önbelleğini Temizle
Bu örnek yordam önbelleğini temizler (yalnızca birincil veritabanı için mümkündür).
ALTER DATABASE SCOPED CONFIGURATION
CLEAR PROCEDURE_CACHE;
G. IDENTITY_CACHE ayarla
Şunlar için geçerlidir: SQL Server (SQL Server 2017 (14.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bu örnek, kimlik önbelleğini devre dışı bırakır.
ALTER DATABASE SCOPED CONFIGURATION
SET IDENTITY_CACHE = OFF;
H. OPTIMIZE_FOR_AD_HOC_WORKLOADS ayarla
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bu örnek, bir toplu iş ilk kez derlendiğinde, derlenmiş plan saplamanın önbellekte depolanmasını sağlar.
ALTER DATABASE SCOPED CONFIGURATION
SET OPTIMIZE_FOR_AD_HOC_WORKLOADS = ON;
Ben. ELEVATE_ONLINE ayarlama
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bu örnek ELEVATE_ONLINE
FAIL_UNSUPPORTED
olarak ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
SET ELEVATE_ONLINE = FAIL_UNSUPPORTED;
J. ELEVATE_RESUMABLE ayarlama
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bu örnek ELEVATE_RESUMABLE
WHEN_SUPPORTED
olarak ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
SET ELEVATE_RESUMABLE = WHEN_SUPPORTED;
K. Plan önbelleğinden sorgu planını temizleme
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bu örnek, yordam önbelleğinden belirli bir planı temizler:
ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE 0x06000500F443610F003B7CD12C02000001000000000000000000000000000000000000000000000000000000;
L. Duraklatılmış süreyi ayarlama
Şunlar için geçerlidir: Azure SQL Veritabanı ve Azure SQL Yönetilen Örneği
Bu örnek, devam ettirilebilen dizini duraklatma süresini 60 dakikaya ayarlar.
ALTER DATABASE SCOPED CONFIGURATION
SET PAUSED_RESUMABLE_INDEX_ABORT_DURATION_MINUTES = 60;
M. Kayıt defteri özetlerini karşıya yüklemeyi etkinleştirme ve devre dışı bırakma
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak)
Bu örnek, kayıt defteri özetlerinin bir Azure depolama hesabına yüklenmesini sağlar.
ALTER DATABASE SCOPED CONFIGURATION
SET LEDGER_DIGEST_STORAGE_ENDPOINT = 'https://mystorage.blob.core.windows.net';
Bu örnek, kayıt defteri özetlerinin karşıya yüklenmesini devre dışı bırakır.
ALTER DATABASE SCOPED CONFIGURATION
SET LEDGER_DIGEST_STORAGE_ENDPOINT = OFF;
Ek Kaynaklar
MAXDOP Kaynakları
- Paralellik derecesi
- SQL Server ''en yüksek paralellik derecesi'' yapılandırma seçeneğine yönelik öneriler ve yönergeler
LEGACY_CARDINALITY_ESTIMATION Kaynakları
- Kardinalite Tahmini (SQL Server)
- SQL Server 2014 Kardinalite Tahmin Aracı ile Sorgu Planlarınızı İyi
PARAMETER_SNIFFING Kaynakları
- Parametre Algılama
- "Parametre kokusu alıyorum!"
QUERY_OPTIMIZER_HOTFIXES Kaynakları
ELEVATE_ONLINE Kaynakları
Çevrimiçi Dizin İşlemleri için
ELEVATE_RESUMABLE Kaynakları
Çevrimiçi Dizin İşlemleri için
İlgili içerik
- sys.database_scoped_configurations
- sys.configurations
- Veritabanları ve Dosyalar Kataloğu Görünümleri (Transact-SQL)
- Server yapılandırma seçenekleri (SQL Server)
- alter index (Transact-SQL)
- İNDEKS OLUŞTUR (Transact-SQL)
- SQL Server ''en yüksek paralellik derecesi'' yapılandırma seçeneğine yönelik öneriler ve yönergeler
- Çevrimiçi Dizin İşlemleri nasıl çalışır
- Dizin İşlemlerini Çevrimiçi Gerçekleştirme
- SQL veritabanlarında akıllı sorgu işleme
- Bellek geri bildirim
- Kardinalite tahmini (CE) geri bildirimi
- Paralellik derecesi (DOP) geri bildirim