Microsoft, Microsoft SQL Server 2012 düzeltmelerini bir indirilebilir dosya olarak dağıtır. Düzeltmeler birikimli olduğundan, her yeni sürüm önceki SQL Server 2012 düzeltmesi sürümüyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir.
Belirtiler
Aşağıdaki senaryoyu inceleyin:
-
Microsoft SQL Server 2012 ' de veri kalitesi Istemcisinde bir veya daha fazla veri kalitesi projesi oluşturabilirsiniz.
-
SQL Server 2012 (SQL Server 2012 CU1) için toplu güncelleştirme 1 ' i yüklersiniz ve ardından veri kalitesi hizmetleri (DQS) kataloglarını güncelleştirmek ve yeni nesneler eklemek için Vseçqsınstaller. exe dosyasını çalıştırırsınız.
-
Veri kalitesi Istemcisini kullanarak oluşturulan veri kalitesi projelerinden birini silmeye çalışırsınız.
Bu senaryoda, veri kalitesi Istemcisi yanıt vermiyor ve SQL Server veritabanı altyapısı sonsuz döngüye giriyor. Ayrıca, sqlservr. exe süreci yüksek CPU kullanımı ile karşılaşır. Notlar
-
Bu sorundan kurtulmak için veri kalitesi Istemcisini ve DQS 'i yeniden başlatın.
-
Bu sorun yalnızca veri kalitesi projesi SQL Server 2012 CU1 yüklenmeden önce oluşturulduysa gerçekleşir.
Neden
Bu sorun, döngü sayacının yanlış güncelleştirilmesinden kaynaklanan bir sistem saklı yordamında sonsuz döngü nedeniyle oluşur.NotBu sorun, SQL Server 2012 CU1 'de bir gerileme nedeniyle oluşur.
Çözüm
Toplu güncelleştirme bilgileri
SQL Server 2012 için hizmet paketi bilgileri
Bu sorunu çözmek için, en son SQL Server 2012 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:
2755533 En son SQL Server 2012 hizmet paketini edinme
SQL Server 2012
Bu sorunla ilgili düzeltme ilk olarak SQL Server 2012 için toplu güncelleştirme 2 ' de yayımlanmıştır. SQL Server için toplu güncelleştirme paketini edinme 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:
2703275 SQL Server 2012 için toplu güncelleştirme paketi 2Not Derlemeler birikimli olduğundan, her yeni düzeltme sürümü önceki SQL Server düzeltmesi sürümüyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. Bu düzeltmeyi içeren en son düzeltme sürümünü uygulamayı düşünebilirsiniz. Daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasına tıklayın:
2692828 SQL Server 2012 sonrasında yayınlanan SQL Server 2012 derlemeleri
Geçici Çözüm
Bu soruna geçici bir çözüm için aşağıdaki yöntemlerden birini kullanın.Yöntem 1Saklı yordamın sonsuz döngüsünün devam etmesini ve doğru çıkmadığını sağlayan bir kukla yordam eklemek için şu adımları izleyin:
-
Silmeye çalıştığınız etkilenen projenin şema adını belirlemek için aşağıdaki sorguyu çalıştırabilirsiniz:
SELECT 'KnowledgeManagement'+CAST(ID AS NVARCHAR) AS SchemaName, Name FROM DQS_MAIN.dbo.A_KNOWLEDGEBASE WHERE TYPE=2
-
Geri döndürülen SchemaName değerini kullanın ve sonra da eşleşen şema adını ve veri KALITESI proje kimliğini sağlamak Için SQL Server Management Studio 'da aşağıdakine benzer ifadeleri çalıştırabilirsiniz. Şema ve ilgili veri kalitesi projesi için yeni bir kukla yordam oluşturulur. Bu nedenle, sonsuz döngü doğru ilerler.
USE DQS_PROJECTSGOCREATE PROCEDURE DQProject<ID>.NewIndexParseTrigramsFromLexiconAS BEGINPRINT 'THIS IS A DUMMY PROCEDURE TO MAKE DELETE WORK for Microsoft KB Article 2705571';END
Not <ID>, silinmi olan VERI kalitesi projesinin iç kimliğini temsil eder.
-
Veri kalitesi projesinin, veri kalitesi Istemcisinden beklendiği gibi silindiğini doğrulayın.
Yöntem 2CPU kaynaklarını korumak için döngü yordamını hızlı bir şekilde sonlandırıldıysanız, doğru oturumu belirlemek için aşağıdaki ifadeleri çalıştırabilirsiniz. Ancak döngü yordamının işlemi, veri kalitesi projesini temiz bir şekilde silmez. Aşağıdaki Transact-SQL deyimleri, doğru oturumu tanımlamaya ve sonlandırmaya yardımcı olur. Veri kalitesi Istemcisinden birden fazla oturum çalışıyorsa, ifadeleri birden çok kez çalıştırmanız gerekebilir:
DECLARE @session smallint, @text nvarchar(2000), @killcommand nvarchar(200)SELECT TOP 1 @session=s.session_id, @text=st.textFROM sys.dm_exec_sessions sFULL OUTER JOIN sys.dm_exec_requests r ON s.session_id=r.session_idCROSS APPLY sys.dm_exec_sql_text(r.sql_handle) AS stWHERE program_name like 'DQ Services Client: Client Id = %, KB Id = %, Proxy = KnowledgebaseManagementEntryPointClient'AND s.status='running';SELECT 'Killing this DQS session:', @session SessionID, @text QueryText;SET @killcommand=N'Kill '+ cast(@session as nvarchar)+';'EXEC sp_executesql @killcommand;
Not DQS bağlantısını sonlandırmaya yönelik Yöntem 2 ' yi kullanırsanız, veri kalitesi Istemcisinde aşağıdaki hata iletisini alabilirsiniz:
SQL Server veri kalitesi Hizmetleri--------------------------------------------------------------------------------<messageıd>: applicationunhandledexceptionişlenmeyen bir özel durum oluştu. Daha fazla bilgi için, veri kalitesi Hizmetleri istemci günlüğüne bakın.--------------------------------------------------------------------------------System. Data. SqlClient. SqlException (0x80131904): geçerli komutta önemli bir hata oluştu. Sonuçlar (varsa) atılır.
Durum
Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.
Başvurular
DQS 'yi yükseltme hakkında daha fazla bilgi için aşağıdaki Microsoft TechNet Web sitesine gidin: