Makale numarası: 328551 - Son Gözden Geçirme: 13 Mart 2009 Cuma - Gözden geçirme: 12.0 Tempdb veritabanı için eşzamanlı erişim geliştirmeleri
# HATA: 362099 (shiloh_bugs) Bu SayfadaBelirtilerTempdb veritabanı yoğun olarak kullanılması, SQL Server sayfalarını ayırmaya çalıştığında Çekişme karşılaşabilirsiniz. Sysprocesses sistem tablosundaki çıktısı waitresource olarak görünüyor "2: 1: 1" (PFS sayfa) veya "2: 1: 3" (SGAM sayfa). Çekişme derecesini bağlı olarak, bu da SQL Server için kısa bir dönemi, yanıt vermeyen görünmesini neden olabilir. Bu işlem, tempdb yoğun olarak kullanın:
NedenNesne oluşturma sırasında iki (2) sayfaları olmalı karışık bir ayrılmış ve yeni nesneye atanan. Bir sayfa için dizin olduğu tahsisat Haritası'nı (IAM) ikinci ise nesnenin ilk sayfası için. Paylaşılan genel tahsisat Haritası (SGAM) kullanarak, SQL Server karma kapsamlarını izler sayfa. Her SGAM sayfanın yaklaşık 4 gigabayt veri izler. Bir sayfa en iyi karışık ayrılırken bir parçası olarak, SQL Server, karma sayfa tahsis edilecek boş olduğunu bulmak için sayfayı boş alan (PFS) sayfa tarama gerekir. PFS sayfası her sayfa üzerinde kullanılabilir boş alan izler ve her PFS sayfa hakkında 8000 sayfaları izler. Ilgili eşitleme PFS ve SGAM sayfalara; değişiklikler yapmak için tutulur ve diğer değiştiricileri için kısa bir dönemi, yavaşlamayı. Tahsis etmek bir karma sayfa SQL Server'ı arar, bu her zaman tarama aynı dosyayı ve SGAM sayfa üzerinde başlatır. Birkaç bu makalenin "Belirtiler" bölümünde belgelenen sorunlar neden ayırmalar ettiği, olan sayfa karma bu SGAM sayfasında yoğun çakışması olur. Not De-Allocation faaliyetler için daha yüksek olan Çekişme katkıda bulunabilir sayfaları da değiştirmeniz gerekir. (SGAM GAM, PFS, IAM) SQL Server tarafından kullanılan farklı tahsisat mekanizmaları hakkında daha fazla bilgi için <a0></a0>, bu makalenin "Başvurular" bölümüne bakın. ÇözümYoğun kullanımı yaşanıyor tempdb için tahsisat kaynak çakışması azaltmak için <a0></a0>, aşağıdaki adımları izleyin:
Ile için adım 2'de, izleme bayrağı - Microsoft SQL Server 7.0 için T1118 kullanımını izleme bayrağı'nı kullanmadan önce Microsoft Knowledge Base'de aşağıdaki makaleye bakın: 813492
(http://support.microsoft.com/kb/813492/
)
Düzeltme: SQL Server 7.0 üzerinde 1118 izleme bayrağı etkinleştirildiğinde, dizin başarısız oluştur Hizmet paketi bilgileriBu sorunu gidermek için <a0></a0>, Microsoft SQL Server 2000 için en son hizmet paketini edinin. Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:290211
(http://support.microsoft.com/kb/290211/
)
En son SQL Server 2000 hizmet paketi nasıl elde edilir Düzeltme bilgileri<a1>Düzeltme</a1> 8.00.0702Bu düzeltmenin İngilizce sürümü, aşağıdaki tabloda listelenen dosya özniteliklerine (veya daha yeni dosya özniteliklerine) sahiptir. Bu dosyaların tarihleri ve saatleri Koordinatlı Evrensel Saat'e (UTC) göre listelenir. Dosya bilgilerini görüntülediğinizde yerel saate dönüştürülür. UTC ve yerel saat arasındaki farkı bulmak için <a0></a0>, Denetim Masası'ndaki tarih ve saat öğesinde saat dilimi sekmesini kullanın.Date Time Version Size File name ---------------------------------------------------------------- 30-Aug-2002 21:08 786,432 Distmdl.ldf 30-Aug-2002 21:08 2,359,296 Distmdl.mdf 09-Oct-2002 00:54 544 Drop_repl_hotfix.sql 02-Jul-2002 15:35 2000.80.650.0 107,088 Impprov.dll 19-Jul-2002 16:56 774,516 Instdist.sql 08-Oct-2002 23:56 12,615 Inst_repl_hotfix.sql 20-Aug-2002 16:24 2000.80.679.0 111,172 Logread.exe 07-Apr-2002 02:08 2000.80.606.0 62,024 Odsole70.dll 03-Jan-2002 01:59 18,185 Qfe356326.sql 20-Aug-2002 16:47 2000.80.679.0 135,748 Qrdrsvc.exe 26-Aug-2002 22:49 2000.80.679.0 406,088 Rdistcom.dll 04-Oct-2001 01:36 437,302 Replcom.sql 20-Aug-2002 16:33 2000.80.679.0 152,136 Replmerg.exe 19-Nov-2001 20:36 993,945 Replmerg.sql 05-Nov-2002 23:48 2000.80.700.0 221,768 Replprov.dll 04-Oct-2001 01:36 986,906 Replsys.sql 04-Oct-2001 01:36 881,228 Repltran.sql 26-Aug-2002 22:49 2000.80.679.0 283,208 Rinitcom.dll 16-Sep-2002 22:31 390,045 Securityhotfix.sql 26-Aug-2002 22:49 2000.80.679.0 28,672 Sqlagent.dll 26-Aug-2002 18:39 2000.80.679.0 311,872 Sqlagent.exe 28-Aug-2002 16:32 2000.80.679.0 49,152 Sqlagent.rll 26-Aug-2002 22:49 2000.80.679.0 53,824 Sqlcmdss.dll 28-Aug-2002 16:40 2000.80.679.0 12,288 Sqlcmdss.rll 24-Oct-2002 17:37 2000.80.695.0 176,696 Sqlmap70.dll 11-Nov-2002 09:52 2000.80.702.0 7,471,185 Sqlservr.exe 11-Nov-2002 09:51 12,633,088 Sqlservr.pdb 01-Nov-2002 18:56 2000.80.698.0 45,644 Sqlvdi.dll 01-Nov-2002 18:00 2000.80.697.0 82,492 Ssnetlib.dll 07-Apr-2002 02:08 2000.80.606.0 70,208 Xplog70.dll 07-Apr-2002 02:08 2000.80.606.0 53,828 Xpqueue.dll 07-Apr-2002 02:08 2000.80.606.0 156,228 Xprepl.dll 12-Jul-2002 01:00 2000.80.658.0 279,104 Xpstar.dll 16-Sep-2002 23:12 2000.80.686.0 98,872 Xpweb70.dll
DurumMicrosoft, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bu sorunun olduğunu onaylamıştır. Bu sorun ilk olarak Microsoft SQL Server 2000 Service Pack 4'te giderilmiştir. Daha fazla bilgiNasıl <a1>düzeltme</a1> 8.00.0702 Çekişme azaltır.<a1>Düzeltme</a1> 8.00.0702 bir hepsini bir kez deneme algoritması karma sayfa ayırmalar tanıtır. (Birden çok dosya varsa) birlikte düzeltme, başlangıç dosya şimdi her ardışık karma sayfa tahsisatını farklı olacaktır. Bu, her zaman aynı başlangıç noktasıyla aynı sırada SGAMs aracılığıyla baştan sona uyguladım konuşmanızı kesiliyor tarafından çakışması sorunu engeller. Yeni ayırma algoritması SGAM saf-hepsini birer kez deneme, hızı sürdürmek için orantılı bir dolgu oluşuyor. Microsoft aynı boyutta veri dosyaları, tempdb oluşturmanızı önerir.Nasıl uygulama izleme bayrağı - T1118 Çekişme azaltır.Nasıl bir listesi aşağıda verilmektedir kullanımı -T1118 Çekişme azaltır:
837938
(http://support.microsoft.com/kb/837938/
)
SQL Server 2000 örneğinde bir SQL Server 7.0 veritabanı yedeklemesini geri yüklemeye çalıştığınızda hata iletisi alabilirsiniz. Tempdb veri dosyalarıyla eşit boyutlandırma sayısını artırınTempdb veri dosyasının boyutunu 5 GB ve günlük dosyası boyutu, 5 GB ise, öneriyi tek veri dosyası ' (her biri eşit boyutlandırma korumak için 500 MB), 10 artırmak için ise ve günlük dosyası olarak bırakın. Farklı veri dosyalarının ayrı olan disklerdeki olması iyi olacaktır. Ancak bu gerekli değildir ve aynı disk üzerinde birlikte.Tempdb veri dosyalarının en uygun sayısı, tempdb içinde görüldüğü Çekişme derecesini bağlıdır. Bir başlangıç noktası olarak en az SQL için atanmış olan işlemci sayısına eşit olması için tempdb yapılandırabileceğiniz Server. Daha yüksek uç sistemler için (örneğin, 16 veya 32 yordam), 10 Başlangıç numarası olabilir. Çakışması azaltılır, daha fazla veri dosyalarının sayısını artırmak olabilir. Not Iki çekirdekli işlemci iki işlemci kabul edilir. Orantılı dolgu algoritması dosyaların boyutuna bağlı olduğu veri dosyalarının eşit olan boyutlandırma kritiktir. Veri dosyaları, eşit olmayan boyutlarda oluşturulursa, böylece birden çok veri dosyası oluşturma amacı defeating tüm dosyalar arasındaki ayırmalar yayılmasını yerine GAM ayırmalarını daha çok büyük dosyayı kullanmak orantılı bir dolgu algoritması çalışır. Tempdb veri dosyalarının auto-grow, orantılı dolgu algoritması ile de etkileyebilir. Bu nedenle <a0>tempdb</a0> veri dosyalarının auto-grow özelliğini kapatmak için iyi bir fikir olabilir. Auto-grow seçeneği kapalıysa, tempdb ile disk alanı yetersizliği karşılaşan gelen sunucu önlemek için yeterince büyük olan veri dosyaları oluşturmak emin olmanız gerekir. Tempdb veri sayısını artırma ile eşit boyutlandırma dosyaları Çekişme azaltır.Tempdb veri dosyalarıyla eşit boyutlandırma artırıldığında Çekişme azaltır listesi aşağıdadır:
Olumsuz yanlarıAşağıdaki koşullar geçerli olduğunda artırmak veritabanlarının boyutuna görebilirsiniz, daha önce bahsedilen önerileri için bir tek downside şöyledir:
ReferanslarGAM SGAM, PFS ve IAM hakkında daha fazla bilgi için SQL Server 2000 Books Online'da aşağıdaki konulara bakın:
Bu makaledeki bilginin uygulandığı durum:
Otomatik TercümeÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir. Makalenin İngilizcesi aşağıdaki gibidir:328551
(http://support.microsoft.com/kb/328551/en-us/
)
| Diğer Kaynaklar Diğer Destek Siteleri
ToplulukHemen Yardım AlMakale çevirileri
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


Üste