KB2938462-FIX: trūkst vai nepareiza informācija par trūkstošajiem indeksiem tiek atgriezta, ja vaicājumu veicat SQL Server 2014

Strādājiet jebkur no jebkuras ierīces ar Microsoft 365

Jauniniet uz Microsoft 365, lai strādātu jebkur, izmantojot jaunākos līdzekļus un atjauninājumus.

Jaunināt tūlīt

Simptomi

Pieņemsim, ka izmantojat Microsoft SQL Server 2014. Varat sastapties ar tālāk norādītajām divām problēmām, kas ir iekļautas SQL Server 2014 laidiena piezīmēs:

  • Trūkst detalizētas informācijas par indeksiem, kas nepareizi attēloja kolonnas atmiņā optimizēta tabulasproblēma: ja SQL Server 2014 atklāj trūkstošo indeksu vaicājumam ar atmiņu optimizētu tabulu, tas ziņo par trūkstošo indeksu SHOWPLAN_XML, kā arī trūkstošo indeksa DMVs, piemēram, sys.dm_db_missing_index_details. Dažos gadījumos trūkstošajā indeksā detalizēti būs ietvertas iekļautās kolonnas. Tā kā visas kolonnas ir netieši iekļautas visos indeksos, kas atrodas atmiņā optimizētās tabulās, nav atļauts skaidri norādīt iekļautās kolonnas ar atmiņu optimizētiem indeksiem.

  • Trūkstošu informāciju par indeksu neiekļaujiet trūkstošos indeksus, ja pastāv jaukšanas indekss, bet nav piemērots vaicājumaproblēmai: ja jums ir jaukšanas rādītājs kolonnās ar atmiņu optimizēta tabula, kurā ir atsauce vaicājumā, bet to nevar izmantot VAICĀJUMĀ, SQL Server 2014 ne vienmēr ziņo par trūkstošo indeksu SHOWPLAN_XML un DMV sys.dm_db_missing_index_details. Jo īpaši, ja vaicājumā ir vienlīdzības predikāti, kas ietver alfabētiskā rādītāja atslēgu kolonnu apakškopu vai ir nevienlīdzības predikāti, kas ietver indeksu atslēgas kolonnas, JAUKŠANAs indeksu nevar izmantot kā is, un, lai efektīvi izpildītu vaicājumu, būtu nepieciešams cits indekss.

Cēlonis

Problēmas rodas, jo trūkstošais indeksa loģika vaicājumu optimizētājs nediferencē starp tradicionālajiem bez sagrupētajiem indeksiem, kas atrodas uz diska bāzes, un jaunajiem indeksa tipiem atmiņā optimizētajām tabulām.

Katrā jaunajā kumulatīvajā SQL Server atjauninājumā ir iekļauti visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā kumulatīvajā atjauninājumā. Skatiet jaunākos kumulatīvos atjauninājumus SQL Server:

Risinājums

Lai novērstu šīs problēmas, izmantojiet tālāk norādītos risinājumus.

  • Risinājums problēmu novēršanai: nepareiza detalizētas informācijas par indeksiem iekļautās kolonnas atmiņā optimizētas tableDo nav norādīta klauzula INCLUDE ar indeksiem atmiņā optimizētās tabulās.

  • Problēmas risinājums: trūkst detalizētas informācijas par indeksu neiekļaujiet trūkstošos indeksus, ja pastāv jaukšanas indekss, bet nav piemērots queryIn gadījumam, kad izmantojat jaukšanas indeksus, pārbaudiet vaicājumu un vaicājumu plānus, lai noteiktu, vai vaicājumi varēja gūt labumu no indeksēšanas atslēgas apakškopas vai alfabētiskā rādītāja darbībām par nevienlīdzību. Ja vēlaties meklēt ar indeksa atslēgas apakškopu, izmantojiet negrupētu indeksu vai izmantojiet JAUKŠANAs indeksu tieši tajās kolonnās, kurās vēlaties meklēt. Ja vēlaties meklēt par nevienlīdzības predikātu, izmantojiet negrupētu indeksu, nevis HASH.

Piezīme. Risinājumi ir no SQL Server 2014 piezīmes par laidienu

Statusa

Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".

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?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka jums varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta speciālistiem.

×