Düzeltme: sürekli olarak, SQL Server 2005'te <a1>tempdb</a1> veritabanındaki iç nesneleri oluşturan bir sorgu çalıştırdığınızda kullanılan alanı <a0>tempdb</a0> veritabanında artırır

Makale çevirileri Makale çevirileri
Makale numarası: 947204 - Bu makalenin geçerli olduğu ürünleri görün.
# Hata: 50002301 (SQL düzeltmesi)
Microsoft, Microsoft SQL Server 2005 düzeltmeleri tek bir yüklenebilir dosya dağıtır. Düzeltmeleri birikimli olduğu için her yeni sürüm, tüm düzeltmeleri içerir ve sürüm önceki SQL Server 2005 ile birlikte verilen tüm güvenlik düzeltmelerini düzeltin.
Hepsini aç | Hepsini kapa

Belirtiler

Microsoft SQL Server 2005'te tempdb veritabanında iç nesneleri oluşturan bir sorguyu çalıştırın. <a0>Tempdb</a0> veritabanında kullanılan alanı, birden çok kez sorgu çalıştırdığınızda, sürekli olarak artırır. Son olarak, tempdb veritabanında tam olur. Ayrıca, tempdb veritabanını temizlemek için SQL Server hizmetini yeniden başlatmanız gerekir.

Bu sorun oluştuğunda, aşağıdaki ifadeyi birçok kez tempdb veritabanında çalıştırın.
SELECT SUM(internal_object_reserved_page_count) AS [internal object pages used],
(SUM(internal_object_reserved_page_count)*1.0/128) AS [internal object space in MB]
FROM sys.dm_db_file_space_usage;
Bunu yaparsanız, internal_object_reserved_page_count sütunun değeri, her zaman bu deyimi çalıştırdığınızda artırır.

Sonra dinamik bir yönetim görünümü sys.dm_db_session_space_usage sorgula. Bunu yaptığınızda, internal_objects_dealloc_page_count sütunun değeri karşılık gelen bir artış olmadan internal_objects_alloc_page_count sütununun değerini artırır.

Neden

Sorguyu çalıştırma her zaman, SQL Server iç nesneleri tempdb veritabanında oluşturur. Bazı koşullarda, SQL Server <a0>tempdb</a0> veritabanında bir iç nesneler için ayrılmış sayfaların ayırması değil.

Çözüm

Bu sorunla ilgili düzeltme, toplu güncelleştirme 6 önce yayımlanmıştır. SQL Server 2005 Service Pack 2 için bu toplu güncelleştirme paketini elde etme hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
946608SQL Server 2005 Service Pack 2 için toplu güncelleştirme paketine 6
Not Yap?lar birikimli olduğu için her yeni düzeltme yayımlanan tüm düzeltmeleri içerir ve sürüm önceki SQL Server 2005 ile birlikte verilen tüm güvenlik düzeltmelerini düzeltin. Microsoft, bu düzeltmeyi içeren en son düzeltme sürümü uygulama düşündüğünüz önerir. Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
937137SQL Server 2005 Service Pack 2'den sonra yayımlanan SQL Server 2005 derlemeleri
Microsoft SQL Server 2005 düzeltmeleri için belirli bir SQL Server hizmet paketlerini oluşturulur. Bir SQL Server 2005 Service Pack 2 düzeltme, SQL Server 2005 Service Pack 2 yüklemeye uygulamanız gerekir. Varsayılan olarak, sonraki SQL Server hizmet paketi ile bir SQL Server hizmet paketinde sağlanan herhangi bir düzeltme bulunmaktadır.

Durum

Microsoft, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bu sorunun olduğunu onaylamıştır.

Daha fazla bilgi

Iç nesneleri kullanan işlemler tam bir listesi hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitelerini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/ms174412.aspx

http://technet.microsoft.com/en-us/library/cc966545.aspx
Sorunlu oturum, sayfalar <a0>tempdb</a0> veritabanında tahsis kimliği (SPID) belirlemek için <a0></a0>, tahsisat halka arabelleğinde inceleyebilirsiniz. Bunu yapmak için <a0></a0>, önce izleme bayrağı 1106 etkinleştirmelisiniz. Varsayılan olarak, 1106 izleme bayrağı etkin değil. Sonra yükleme bilgilerini ve miktarda kaldırma bilgileri tempdb veritabanında görüntülemek için aşağıdaki deyimi çalıştırmalısınız.
SELECT 
record.value('(Record/@id)[1]', 'int') AS record_id,
CONVERT (varchar, DATEADD (ms, -1 * ((inf.cpu_ticks / inf.cpu_ticks_in_ms) - [timestamp]), GETDATE()), 126) AS EventTime,
[timestamp] ,
 record.value('(Record/@id)[1]', 'int') AS RingBuffer_Record_Id,
 record.value('(Record/ALLOC/Event)[1]', 'int') AS AllocationEventType,
 record.value('(Record/ALLOC/SpId)[1]', 'int') AS SpId,
 record.value('(Record/ALLOC/EcId)[1]', 'int') AS EcId,
 record.value('(Record/ALLOC/PageId)[1]', 'nvarchar(50)') AS AllocatedPageId,
 record.value('(Record/ALLOC/AuId)[1]', 'nvarchar(50)') AS AllocationUnitId,
 record.value('(Record/ALLOC/LsId)[1]', 'nvarchar(50)') AS LsId
FROM sys.dm_os_sys_info inf CROSS JOIN (
SELECT timestamp, CONVERT (xml, record) AS record 
FROM sys.dm_os_ring_buffers 
WHERE ring_buffer_type = 'RING_BUFFER_ALLOC_TRACE'
AND ( record LIKE '%<Event>23</Event>%' -- uniform extent allocation
OR record LIKE '%<Event>22</Event>%' -- uniform extent deallocation
OR record LIKE '%<Event>24</Event>%' -- mixed extent allocation
OR record LIKE '%<Event>25</Event>%' -- mixed extent deallocation
OR record LIKE '%<Event>10</Event>%' -- page allocation
OR record LIKE '%<Event>11</Event>%' -- page deallocation
)) AS t
    ORDER BY record.value('(Record/@id)[1]', 'int') ASC 
Bu bilgileri, sayfası ayırmak ve, sayfalar <a0>tempdb</a0> veritabanında ayırması sorguları belirlemek için SQL Server Profiler'ndan bilgileri karşılaştırabilirsiniz.

Not Izleme bayrağı 1106 SQL sunucusunun performansını etkilediğinden, izleme bayrağı 1106 üretim sunucularında kullanmamanızı öneririz.

Hangi dosyalar değiştirilir hakkında daha fazla bilgi ve bu Microsoft Bilgi Bankası makalesinde açıklanan düzeltmeyi içeren bir toplu güncelleştirme paketini uygulamak için Önkoşullar hakkında bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
946608SQL Server 2005 Service Pack 2 için toplu güncelleştirme paketine 6

Referanslar

SQL Server Service Pack 2, sonra kullanılabilen yap?lar listesi hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
937137SQL Server 2005 Service Pack 2'den sonra yayımlanan SQL Server 2005 derlemeleri
SQL Server için artımlı hizmet modeli hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
935897SQL Server ekibinden bildirilen sorunlar için düzeltmeler ulaştırmak için artımlı bir hizmet modeli kullanılabilir
SQL Server 2005 Service Pack 2'yi edinme hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
913089En son SQL Server 2005 hizmet paketi nasıl elde edilir
Yeni özellikleri ve SQL Server 2005 Service Pack 2'ndeki geliştirmeler hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitesini ziyaret edin:
http://go.microsoft.com/fwlink/?LinkId=71711
SQL Server güncelleştirmelerinin adlandırma şeması hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
822499Microsoft SQL Server yazılım güncelleştirme paketlerinin yeni adlandırma şeması
Yazılım güncelleştirme terminolojisi hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
824684Microsoft yazılım güncelleştirmelerini açıklamak için kullanılan standart terminolojinin açıklaması

Özellikler

Makale numarası: 947204 - Last Review: 19 Şubat 2008 Salı - Gözden geçirme: 1.2
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
Anahtar Kelimeler: 
kbmt kbsql2005engine kbhotfixrollup kbfix kbpubtypekc kbqfe kbexpertiseadvanced KB947204 KbMttr
Machine-translated Article
Ö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:947204

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com