Pēc noklusējuma šis labojums ir 1. servisa pakotne sistēmai SQL Server 2014 un 3. servisa pakotne sistēmai SQL Server 2012 un nav jāpievieno trasēšanas karodziņu, lai iespējotu labojumu. Lai iespējotu labojumu pēc instalēšanas kumulatīvo atjauninājumu sadaļā risinājums, jums ir jāsāk Microsoft SQL Server trasēšanas karodziņš 1236 pievienojot startēšanas parametri.

Pazīmes

Pieņemsim, piemēram, Microsoft SQL Server 2014, SQL Server 2012, SQL Server 2008 vai SQL Server 2008 R2 palaist datorā, kurā ir daudz procesoru. Slēdzenes skaits (resursa tips = datu bāze) par konkrētu datu bāzi pārsniedz noteiktu robežu, jums rodas šādas darbības problēmas:

  • Priviliģētā vērtības rasties LOCK_HASH vienpiekļuves slēdzene skaitu.

    Piezīme. Skatiet sadaļā "Papildinformācija", lai uzzinātu, kā kontrolēt šo vienpiekļuves slēdzene.

  • Vaicājumu vai darbības, kas nepieciešama datu bāzes bloķēšanas aizņemt ilgu laiku ir pabeigta. Piemēram, varat pamanīt šo darbību aizkavēšanās:

    • SQL servera pieteikšanās

    • Saistītie serveri vaicājumi

    • sp_reset_connection

    • Darbības

Piezīme. Atrast bloķēšanas saraksts (resursa tips = datu bāze) attiecīgajā datu bāzē, skatiet sadaļu "Papildinformācija". Atskaites vērtība ir atkarīga no vides.

Katra jaunā SQL Server kumulatīvais atjauninājums ietver visus labojumfailus un visus drošības labojumus, kas bija ietverti iepriekšējā kumulatīvajā atjauninājumā. Jaunākais kumulatīvo atjauninājumu skatiet SQL Server:


Informācija par labojumfailu
Korporācija Microsoft piedāvā atbalstītu labojumfailu. Tomēr šis labojumfails ir paredzēts tikai šajā rakstā aprakstītās problēmas novēršanai. Lai lietotu šo labojumfailu tikai tām sistēmām, kurām ir radusies tieši šī problēma.

Ja labojumfails ir pieejams lejupielādei, sadaļa "Pieejama labojumfaila lejupielāde" ir pieejama šī zināšanu bāzes raksta augšpusē. Ja šādas sadaļas nav, pieprasiet, lai iegūtu labojumfailu Microsoft klientu apkalpošanas un atbalsta.

Piezīme. Ja rodas papildu problēmas vai nepieciešama problēmu novēršana, iespējams, būs jāizveido atsevišķs pakalpojuma pieprasījums. Parasti atbalsta izmaksas tiek piemērotas jautājumiem par papildu atbalstu un problēmām, kas neattiecas uz šo konkrēto labojumfailu. Lai iegūtu pilnīgu sarakstu ar Microsoft klientu apkalpošanas un atbalsta centra tālruņa numuru vai izveidotu atsevišķu pakalpojuma pieprasījumu, apmeklējiet šo Microsoft vietni:

http://support.microsoft.com/contactus/?ws=supportPiezīme. Formās "Labojumfails ir pieejams lejupielādei" ir norādītas valodas, kurās ir pieejams labojumfails. Ja tajā nav vajadzīgās valodas, tas nozīmē, ka šai valodai labojumfails nav pieejams.

Statuss

Korporācija Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir minēti sadaļā "Attiecas uz".

Papildinformācija

Kad lietojumprogramma izveido savienojumu ar SQL serveri, vispirms izveido datu bāzes kontekstā. Pēc noklusējuma savienojuma mēģinās iegūt datu bāzes atslēga SH režīmā. SH datu bāzes atslēga tiks izlaistas, savienojums ir apturēts vai savienojuma laikā tiek mainīta datu bāzes kontekstā. Ja jums ir daudz aktīvo savienojumiem, kas izmanto vienā datu bāzē atbilstoši, var būt daudz resursu datu bāzes tips šo konkrēto datu bāzes atslēgas.

Datorā, kurā ir 16 procesori, tikai tabulas objektu izmantot nodalītas bloķēšanas sistēmu. Tomēr datu bāzes bloķēšanas nav nodalīti. Tādēļ lielāka datu bāzes skaits bloķē, ilgāks laiks SQL Server datu bāzes bloķēšanas iegūt. Vairākums lietojumprogrammu nerodas problēmas, ko rada šo dizainu. Bet kā skaits pārsniedz noteiktu robežu, papildu darbs un laiks ir nepieciešams, lai iegūtu bloķēšanas. Lai gan maksa tikai micro sekundes katru papildu bloķēšanas, kopējais var ātri palielināt, jo jaukšanas kopumi bloķēšanas aizsardzību, izmantojot vienpiekļuves slēdzene. Tas izraisa papildu CPU ciklu un gaida papildu darbiniekiem iegūt atslēgas.

Šis labojumfails nodrošina datu bāzes bloķēšanas nodalījumus, ja ir iespējots trasēšanas karodziņš T1236 startēšanas laikā. Dziļuma bloķēšanas saraksts nodalīšanas datu bāzes atslēga saglabā pārvaldāmam katra lokālajai nodalījumu. Tas ievērojami uzlabo piekļuves ceļš, kas tiek izmantota, lai iegūtu datu bāzes atslēga.

Pārraudzīt LOCK_HASH vienpiekļuves slēdzene, varat izmantot šo vaicājumu.SET NOCOUNT ONCREATE TABLE #spinlock_stats([CaptureTime] datetime,[name] nvarchar(512),[collisions] bigint,
[spins] bigint,[spins_per_collision] real,[sleep_time] bigint,[backoffs] int)
DECLARE @counter int = 1
WHILE @counter < 100
BEGIN
INSERT INTO #spinlock_stats SELECT GETDATE() as "CaptureTime" , * FROM sys.dm_os_spinlock_stats WHERE [name] = 'LOCK_HASH'
WAITFOR DELAY '00:00:05'
SET @counter +=1
END
SELECT * FROM #spinlock_stats ORDER BY [CaptureTime]
DROP TABLE #spinlock_stats
Lai iegūtu papildinformāciju par diagnosticēt un atrisināt vienpiekļuves slēdzene apgalvojuma SQL Server, dodieties uz šo dokumentu:

Diagnosticēt un atrisināt vienpiekļuves slēdzene apgalvojuma SQL ServerPiezīme. Lai gan šajā dokumentā ir rakstīts SQL Server 2008 R2, informācija ir spēkā arī SQL Server 2012.

Atsauces

Lai iegūtu papildinformāciju par trasēšanas karodziņu SQL Server 2012, skatiet TechNet vietnē:

Papildinformāciju par trasēšanas karodziņu SQL Server 2012
Papildinformāciju par to, kā atrast datu bāzes bloķēšanas skaits lietotāju datu bāze par izmantot šo vaicājumu aprēķināt šo vērtību:select Resource_database_id, resource_type, request_mode, request_status, count (*) 'LockCount' from sys.dm_tran_locks
group by Resource_database_id, resource_type, request_mode, request_status


Vai nepieciešama papildu palīdzība?

Paplašiniet savas prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Microsoft Insider

Vai šī informācija bija noderīga?

Cik lielā mērā esat apmierināts ar valodas kvalitāti?
Kas ietekmēja jūsu pieredzi?

Paldies par jūsu atsauksmēm!

×