Microsoft raspoređuje Microsoft SQL Server 2012 ispravke kao jednu datoteku za preuzimanje. Budući da su popravci kumulativni, svako novo izdanje sadrži sve hitne popravke i sve sigurnosne popravke koji su bili obuhvaćeni prethodnim izdanom sustava SQL Server 2012 Fix.
Simptomi
Razmotrite sljedeći scenarij:
-
Stvorite jedan ili više projekata kvalitete podataka u klijentu kvalitete podataka u programu Microsoft SQL Server 2012.
-
Instalirajte Kumulativno ažuriranje 1 za SQL Server 2012 (SQL Server 2012 paket ažuriranja CU1), a zatim pokrenite datoteku Gqsinstaller. exe da biste nadogradili kataloge usluge kvalitete podataka (FAQ) i dodali nove objekte.
-
Pokušate izbrisati jedan od stvorenih projekata kvalitete podataka pomoću klijenta za kvalitetu podataka.
U ovom scenariju klijent za kvalitetu podataka prestaje reagirati, a modul baze podataka sustava SQL Server unosi beskonačnu petlju. Uz to, postupak sqlservr. exe doživljava visoku potrošnju CPU-a. Napomene
-
Da biste se oporavili od tog problema, ponovno pokrenite klijent za kvalitetu podataka i FAQ.
-
Taj se problem pojavljuje samo ako je projekt kvalitete podataka stvoren prije instalacije sustava SQL Server 2012 paket ažuriranja CU1.
Uzrok
Taj se problem pojavljuje zbog beskrajne petlje u sistemskoj pohranjenoj proceduri koja je uzrokovana nepropisno ažuriranjem pulta petlja.NapomenaTaj se problem pojavljuje zbog regresije u sustavu SQL Server 2012 paket ažuriranja CU1.
Rješenje
Kumulativne informacije o ažuriranju
Informacije o servisnom paketu za SQL Server 2012
Da biste riješili taj problem, Nabavite najnoviji servisni paket za SQL Server 2012. Dodatne informacije potražite u članku iz Microsoftove baze znanja pod sljedećim brojem:
2755533 Kako nabaviti najnoviji servisni paket za SQL Server 2012
SQL Server 2012
Popravak tog problema prvi je put izdan u kumulativnom ažuriranju 2 za SQL Server 2012. Dodatne informacije o dobivanju tog kumulativnog paketa za ažuriranje za SQL Server potražite u članku iz Microsoftove baze znanja pod sljedećim brojem:
2703275 Kumulativno ažuriranje paketa 2 za SQL Server 2012Napomena Budući da su grade kumulativne, svako novo izdanje ispravci sadrži sve hitne popravke i sve sigurnosne popravke koji su bili obuhvaćeni prethodnim izdanjima sustava SQL Server. Preporučujemo da razmotrite primjenu najnovijeg izdanja popravka koja sadrži taj hitni popravak. Za više informacija kliknite sljedeći broj članka da biste prikazali članak u Microsoftovoj bazi znanja:
2692828 Verzije sustava SQL Server 2012 koje su objavljene nakon objavljivanja sustava SQL Server 2012
Zaobilazno rješenje
Da biste zaobišli taj problem, upotrijebite jedan od sljedećih načina.Prva metodaDa biste dodali lažnu proceduru koja omogućuje nastavak pohrane neograničene procedure, a zatim pravilno izađite, slijedite ove korake:
-
Pokrenite sljedeći upit da biste odredili naziv sheme za zahvaćeni projekt koji ste pokušali izbrisati:
SELECT 'KnowledgeManagement'+CAST(ID AS NVARCHAR) AS SchemaName, Name FROM DQS_MAIN.dbo.A_KNOWLEDGEBASE WHERE TYPE=2
-
Upotrijebite vrijednost sheme koja se vraća, a zatim pokrenite naredbe koje nalikuju sljedećem u programu SQL Server Management Studio da biste dodijelili odgovarajući naziv sheme i ID projekta kvalitete podataka. Za shemu i odgovarajući projekt kvalitete podataka stvorit će se novi lažni postupak. Stoga se beskonačna petlja pravilno odvija.
USE DQS_PROJECTSGOCREATE PROCEDURE DQProject<ID>.NewIndexParseTrigramsFromLexiconAS BEGINPRINT 'THIS IS A DUMMY PROCEDURE TO MAKE DELETE WORK for Microsoft KB Article 2705571';END
Notes <ID> predstavlja interni ID projekta kvalitete podataka koji se briše.
-
Provjerite je li projekt kvaliteta podataka izbrisan iz klijenta za kvalitetu podataka kao što je očekivano.
Druga metodaAko morate brzo ubiti proceduru razgovora da biste sačuvali resurse CPU-a, pokrenite sljedeće naredbe da biste odredili ispravnu sesiju. No, ubijanje postupka za čišćenje ne briše čisti projekt kvalitete podataka. U sljedećim izvješćima Transact-SQL pomoći će vam identificirati i ubiti ispravnu sesiju. Ako je na klijentu za kvalitetu podataka pokrenut više sesija, možda ćete morati pokrenuti naredbe više puta:
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;
Napomena Ako koristite metodu 2 da biste ubili vezu s DUBOOM, možda će se u klijentu kvalitete podataka pojaviti sljedeća poruka o pogrešci:
Servisi za kvalitetu podataka sustava SQL Server--------------------------------------------------------------------------------<MessageId>: došlo je do nerukovane iznimke programa applicationunhandledexceptionan. Dodatne informacije potražite u članku Outlook Outlook Services Service log.--------------------------------------------------------------------------------System. Data. SqlClient. Sqlex, (0x80131904): došlo je do teške pogreške u trenutnim naredbom. Rezultat, ako ih ima, trebao bi biti odbačen.
Status
Microsoft je potvrdio da se radi o problemu u Microsoftovim proizvodima navedenim u odjeljku "odnosi se na".
Reference
Dodatne informacije o nadogradnji servisa FAQ potražite na sljedećem web-mjestu sustava Microsoft TechNet: