tempdb veritabanı
The tempdb system database is a global kaynak that is available to all users connected to the örnek of SQL Server and is used to hold the following:
Geçici kullanıcı nesneleri açıkça, gibi oluşturulur: Genel veya yerel geçici tablo, geçici saklı yordamlar, Tablo değişkenlerini veya imleç.
Tarafından oluşturulan bir iç nesne SQL Server Database Engine, örneğin, iş tabloları biriktiricileri veya sıralama için Ara sonuçlar saklamak.
Veri okuma kaydedilmiş kullanarak kullanan bir veritabanı değişikliği hareketleri tarafından oluşturulan satır sürümleri, sürüm oluşturma yalıtım veya anlık görüntü görüntü ayırma işlemleri satır.
Satır sürümleri özellikleri için veri değişikliği hareketlerin gibi oluşturulur: çevrimiçi bir dizin işlemleri ve birden çok Active sonuç kümesi (MARS) AFTER tetikler.
Işlem içinde tempdb en az kaydedilir.This enables transactions to be rolled back.tempdb is re-created every time SQL Server is started so that the system always starts with a clean copy of the database.Geçici tablolara ve saklı yordamlar bırakılan tarihle otomatik olarak kesmek ve Sistem kapatıldığında hiçbir etkin bağlantılardır.Bu nedenle, yoktur hiçbir zaman içinde herhangi bir şey tempdb bir oturumdan kaydedilecekSQL Server başka. yedek ve geri yükleme işlemleri üzerinde izin verilmez tempdb.
Tempdb fiziksel özelliklerini
Aşağıdaki tablo, ilk yapılandırma değerlerini listeler tempdb veri ve günlük dosyaları.Bu dosyaların boyutunu biraz farklı sürümleri için farklı olabilir SQL Server.
dosyasını arayın |
Mantıksal ad |
fiziksel ad |
Dosya Büyümesi |
---|---|---|---|
Birincil veri |
tempdev |
tempdb.mdf |
Otomatik büyüme disk dolu olduğu kadar yüzde 10 olarak |
Günlük |
templog |
templog.ldf |
Otomatik büyüme en fazla 2 terabayt yüzde 10 olarak |
Boyutu tempdb bir sistem performansını etkileyebilir.Örneğin, tempdb boyutu çok küçük, sistem işlemi olabilir çok autogrowing ile veritabanı, başlayan , iş yükünü gereksinim her desteklemek için kullanılanSQL Server. Boyutunu artırarak bu yükünü kurtulabilirsiniz. tempdb.Daha fazla bilgi için bkz: Tempdb performansı en iyi duruma getirme ve Tempdb kapasite planlama.
Tempdb performans yenilikleri
Içinde SQL Server, tempdb performansı aşağıdaki yollarla artırıldı:
Geçici tablo ve Tablo değişkenlerini önbelleğe.Önbelleğe alma işlemleri bırakın ve çok hızlı bir şekilde yürütmek için geçici nesneleri oluşturmak ve sayfa tahsisat Çekişme azaltır sağlar.
protokol latching tahsisat sayfa artırıldı.Bu, kullanılan (güncelleştirme) kilitler YUKARı sayısını azaltır.
Yük için günlüğe kaydetme tempdb düşürülür.Bu, disk g/Ç bant genişliği kullanımını azaltır tempdb günlük dosyası.
Algoritma, karma sayfalarında tahsisi için tempdb artırıldı.
Tempdb veri ve günlük dosyaları taşıma
Taşımak için tempdb veri ve günlük dosyaları bakınsistem veritabanları taşıma.
Veritabanı Seçenekleri
Aşağıdaki tabloda, her veritabanı seçeneği için varsayılan değer listeler tempdb veritabanı ve seçenek olup değiştirilebilir.Bu seçenekler geçerli ayarlarını görüntülemek için , sys.Databases kataloğunu görüntüleyin.
Veritabanı seçeneği |
Varsayılan değer |
Değiştirilebilir |
---|---|---|
allow_snapshot_isolation |
DEVRE DIŞI |
Evet |
ANSI_NULL_DFLT_ON |
DEVRE DIŞI |
Evet |
ansi_nulls |
DEVRE DIŞI |
Evet |
ansi_padding |
DEVRE DIŞI |
Evet |
ansi_warnings |
DEVRE DIŞI |
Evet |
ARITHABORT |
DEVRE DIŞI |
Evet |
auto_close |
DEVRE DIŞI |
Hayır |
auto_create_statistics |
AÇIK |
Evet |
auto_shrink |
DEVRE DIŞI |
Hayır |
auto_update_statistics |
AÇIK |
Evet |
auto_update_statistics_async |
DEVRE DIŞI |
Evet |
change_tracking |
DEVRE DIŞI |
Hayır |
concat_null_yields_null |
DEVRE DIŞI |
Evet |
cursor_close_on_commit |
DEVRE DIŞI |
Evet |
cursor_default |
GENEL |
Evet |
Veritabanı erişilebilirlik seçenekleri |
ÇEVRİMİÇİ multi_user read_write |
Hayır Hayır Hayır |
date_correlation_optimization |
DEVRE DIŞI |
Evet |
db_chaining |
AÇIK |
Hayır |
ŞİFRELEME |
DEVRE DIŞI |
Hayır |
numeric_roundabort |
DEVRE DIŞI |
Evet |
page_verify |
sağlama toplamı yeni yüklemeler için SQL Server. Yükseltme yok SQL Server. |
Evet |
parameterization |
BASİT |
Evet |
QUOTED_IDENTIFIER |
DEVRE DIŞI |
Evet |
read_committed_snapshot |
DEVRE DIŞI |
Hayır |
KURTARMA |
BASİT |
Hayır |
recursive_triggers |
DEVRE DIŞI |
Evet |
Hizmet ayırıcı seçenekleri |
enable_broker |
Evet |
GÜVENİLİR |
DEVRE DIŞI |
Hayır |
Bu veritabanı seçeneklerini açıklaması için bkz: DATABASE küme seçenekleri (Transact-SQL) ALTER.
Kısıtlamalar
Aşağıdaki işlemleri gerçekleştirilemez tempdb veritabanı:
Dosya grupları ekleme.
Yedekleme veya veritabanı geri yükleniyor.
harmanlama değiştirme.Varsayılan harmanlama sunucu harmanlama düzeni ' dir.
Changing the database owner.tempdb is owned by dbo.
Veritabanı anlık görüntü görüntü görüntü oluşturuluyor.
Veritabanını bırakma.
Bırakma guest kullanıcı veritabanından.
Değişiklik veri yakalama etkinleştirme.
veritabanı yansıtması katılıyor.
Birincil dosya grubu, birincil veri dosyası ve günlük dosyası kaldırılıyor.
Veritabanı veya birincil dosya grubu yeniden adlandırılıyor.
DBCC CHECKALLOC çalıştırıyor.
DBCC CHECKCATALOG çalıştırıyor.
Veritabanı için OFFLINE olarak ayarlanıyor.
Veritabanı veya birincil dosya grubu için READ_ONLY ayarlanıyor.
See Also