Microsoft distribuerer rettelser til Microsoft SQL Server 2008 R2, SQL Server 2008 R2 SP1 og SQL Server 2008 som én fil, der kan downloades. Da rettelserne er kumulative, indeholder hver ny version alle de hotfixes og alle de sikkerhedsrettelser, der var inkluderet i den tidligere version af SQL Server 2008 R2, SQL Server 2008 R2 SP1 og SQL Server 2008-rettelser.
Introduktion
Kommandoen DBCC CHECKDB balancerer behovet mellem ydeevne og ressourcer. Derfor maksimerer kommandoen DBCC CHECKDB som standard muligvis ikke ressourceforbruget, når der køres kontrol af konsistens for en database.
Kommandoen DBCC CHECKDB maksimerer f.eks. muligvis ikke brugen af disk-I/O, når der køres konsistenskontrol for en database.
Løsning
Oplysninger om kumulativ opdatering
SQL Server 2008 Service Pack 2
Løsningen på dette problem blev først udgivet i kumulativ opdatering 9 til SQL Server 2008 Service Pack 2. Få flere oplysninger om denne samlede opdateringspakke ved at klikke på nedenstående artikelnummer for at få vist artiklen i Microsoft Knowledge Base:
2673382 samlet opdateringspakke 9 til SQL Server 2008 Service Pack 2
Bemærk Da builds er kumulative, indeholder hver ny rettelsesversion alle de hotfixes og alle de sikkerhedsrettelser, der fulgte med den forrige version af SQL Server 2008-rettelsen. Vi anbefaler, at du overvejer at anvende den nyeste rettelsesversion, der indeholder dette hotfix. Du kan finde flere oplysninger i følgende artikel i Microsoft Knowledge Base:
2402659 De SQL Server 2008-builds, der blev udgivet efter SQL Server 2008 Service Pack 2 blev udgivet
Microsoft SQL Server 2008-hotfixes oprettes til bestemte SQL Server-servicepakker. Du skal anvende et SQL Server 2008 Service Pack 2-hotfix på en installation af SQL Server 2008 Service Pack 2. Alle hotfixes, der leveres i en SQL Server Service Pack, er som standard inkluderet i den næste SQL Server Service Pack.
SQL Server 2008 Service Pack 3
Løsningen på dette problem blev først udgivet i Cumulative Update 4 til SQL Server 2008 Service Pack 3. Få flere oplysninger om denne kumulative opdateringspakke i følgende artikel i Microsoft Knowledge Base:
2673383 kumulativ opdateringspakke 4 til SQL Server 2008 Service Pack 3
Bemærk Da builds er kumulative, indeholder hver ny rettelsesversion alle de hotfixes og alle de sikkerhedsrettelser, der fulgte med den forrige version af SQL Server 2008-rettelsen. Microsoft anbefaler, at du overvejer at anvende den nyeste version af rettelsen, der indeholder dette hotfix. Du kan finde flere oplysninger i følgende artikel i Microsoft Knowledge Base:
2629969 De SQL Server 2008-builds, der blev udgivet efter SQL Server 2008 Service Pack 3 blev udgivet
Microsoft SQL Server 2008-hotfixes oprettes til bestemte SQL Server-servicepakker. Du skal anvende et SQL Server 2008 Service Pack 3-hotfix på en installation af SQL Server 2008 Service Pack 3. Alle hotfixes, der leveres i en SQL Server Service Pack, er som standard inkluderet i den næste SQL Server Service Pack.
Samlet opdateringspakke 11 til SQL Server 2008 R2
Rettelsen til dette problem blev først udgivet i den samlede opdatering 11. Få flere oplysninger om, hvordan du får fat i denne kumulative opdateringspakke til SQL Server 2008 R2, i følgende artikel i Microsoft Knowledge Base:
2633145 kumulativ opdateringspakke 11 til SQL Server 2008 R2
Bemærk Da builds er kumulative, indeholder hver ny rettelsesversion alle de hotfixes og alle de sikkerhedsrettelser, der var inkluderet i den forrige version af SQL Server 2008 R2-rettelsen. Vi anbefaler, at du overvejer at anvende den nyeste rettelsesversion, der indeholder dette hotfix. Du kan finde flere oplysninger i følgende artikel i Microsoft Knowledge Base:
981356 De SQL Server 2008 R2-builds, der blev udgivet efter SQL Server 2008 R2 blev frigivet
Samlet opdateringspakke 4 til SQL Server 2008 R2 SP1
Rettelsen til dette problem blev først udgivet i Cumulative Update 4. Få flere oplysninger om, hvordan du får fat i denne kumulative opdateringspakke til SQL Server 2008 R2 SP1, i følgende artikel i Microsoft Knowledge Base:
2633146 kumulativ opdateringspakke 4 til SQL Server 2008 R2 SP1
Bemærk Da builds er kumulative, indeholder hver ny rettelsesversion alle de hotfixes og alle de sikkerhedsrettelser, der fulgte med den forrige version af SQL Server 2008 R2 SP1-rettelsen. Vi anbefaler, at du overvejer at anvende den nyeste rettelsesversion, der indeholder dette hotfix. Du kan finde flere oplysninger i følgende artikel i Microsoft Knowledge Base:
2567616 De SQL Server 2008 R2-builds, der blev udgivet efter SQL Server 2008 R2 SP1 blev udgivet
SQL Server 2012
SQL Server 2012 indeholder kodeændringerne for disse rettelser. Både sporingsflag 2562 og 2549, som beskrevet nedenfor, gælder også for SQL Server 2012. Rettelsen for at reducere konflikter på DBCC_MULTIOBJECT_SCANNER-låsen kræver dog ikke sporingsflag 2562 i SQL Server 2012. Disse ændringer er som standard inkluderet i SQL Server 2012.
Flere oplysninger
Denne kumulative opdatering introducerer to sporingsflag, der bedre maksimerer disk-I/O-ressourceforbruget, når en bruger udfører kommandoen DBCC CHECKDB . Selvom disse forbedringer kun er rettet mod den PHYSICAL_ONLY indstilling, kan de også forbedre den overordnede ydeevne af DBCC CHECKDB-kommandoer , der ikke bruger den PHYSICAL_ONLY indstilling.
Sporingsflag 2562
Dette sporingsflag indeholder følgende ændringer:
- Kør kommandoen DBCC CHECKDB i en enkelt "batch" uanset antallet af indekser i databasen. Som standard forsøger kommandoen DBCC CHECKDB at minimere tempdb-ressourcer ved at begrænse antallet af indekser eller "fakta", som den genererer ved hjælp af et "batches"-koncept. Dette sporingsflag tvinger al behandling i én batch.
- Forbedring af den interne behandling til bestemmelse af, hvilke sider der skal læses fra databasen. Dette reducerer striden om den DBCC_MULTIOBJECT_SCANNER lås.
En effekt af at bruge dette sporingsflag er, at pladskravene til tempdb kan stige. Tempdb kan vokse til så meget som 5 procent eller mere af brugerdatabasen, der behandles af DBCC CHECKDB-kommandoen . Vi anbefaler derfor, at du forudtilpasser tempdb til mindst 5 procent af databasestørrelsen, når du bruger dette sporingsflag, for at undgå automatisk vækst, hvilket kan sænke ydeevnen af DBCC CHECKDB-kommandoen .
Bemærk Sporingsflag 2562 er et sporingsflag på sessionsniveau. Du kan aktivere det på sessionsniveau.
Sporingsflag 2549
Kommandoen DBCC CHECKDB opbygger en intern liste over sider til læsning pr. entydigt diskdrev på tværs af alle databasefiler. Denne logik bestemmer entydige diskdrev baseret på drevbogstavet for den fysiske fils fysiske filnavn. Hvis de underliggende diske faktisk er entydige, når drevbogstaverne er eller ej, vil kommandoen DBCC CHECKDB behandle disse som én disk. Når dette sporingsflag er aktiveret, antages hver databasefil at være på et entydigt diskdrev. Brug ikke dette sporingsflag, medmindre du ved, at hver fil er baseret på en unik, fysisk disk.
Bemærk Sporingsflag 2549 er et globalt sporingsflag. For at aktivere det skal du bruge det som opstartsparameter eller bruge DBCC TRACEON (2549,-1).
Selvom disse sporingsflag forbedrer ydeevnen af DBCC CHECKDB-kommandoerne , der målretter brugen af DBCC CHECKDB-indstillingen , oplever nogle brugere muligvis ingen forbedring i ydeevnen. Mens disse sporingsflag forbedrer brugen af disk-I/O-ressourcer, kan diskressourcernes underliggende ydeevne begrænse den overordnede ydeevne af kommandoen DBCC CHECKDB .
Vær opmærksom på følgende begrænsninger:
- Forbedringerne af ydeevnen er ikke designet til at forbedre ydeevnen, når du bruger reparationsindstillingen.
Forbedringer af ydeevnen er f.eks. ikke designet til at forbedre ydeevnen, når du bruger den REPAIR_ALLOW_DATA_LOSS indstilling. - Forbedringerne påvirker ikke kommandoen DBCC CHECKALLOC .
- Forbedringerne kan forbedre ydeevnen af kommandoen DBCC CHECKTABLE for indeks med mange sider. Forbedringerne har dog ikke til formål at forbedre ydeevnen for kommandoen DBCC CHECKTABLE .
Status
Microsoft har bekræftet, at dette er et problem i de Microsoft-produkter, der er angivet i afsnittet "Gælder for".