Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Storskaliga indexåtgärder kan generera stora databelastningar som kan göra att transaktionsloggen fylls snabbt. För att säkerställa att indexåtgärden kan återställas kan transaktionsloggen inte trunkeras förrän indexåtgärden har slutförts. Loggen kan dock säkerhetskopieras under indexåtgärden. Transaktionsloggen måste därför ha tillräckligt med utrymme för att lagra både indexåtgärdstransaktionerna och eventuella samtidiga användartransaktioner under indexåtgärdens varaktighet.
Detta gäller både offline- och onlineindexåtgärder. Eftersom de underliggande tabellerna inte kan nås under en offlineindexåtgärd kan det finnas få användartransaktioner och loggen kanske inte växer lika snabbt. Onlineindexåtgärder förhindrar inte samtidig användaraktivitet, därför kan storskaliga onlineindexåtgärder i kombination med betydande samtidiga användartransaktioner orsaka kontinuerlig tillväxt av transaktionsloggen utan ett alternativ för att trunkera loggen.
Recommendations
När du kör storskaliga indexåtgärder bör du överväga följande rekommendationer:
Kontrollera att transaktionsloggen säkerhetskopieras och trunkeras innan du kör storskaliga indexåtgärder online och att loggen har tillräckligt med utrymme för att lagra det planerade indexet och användartransaktionerna.
Överväg att ställa in alternativet
SORT_IN_TEMPDBtillONför indexåtgärden. Detta skiljer indextransaktionerna från samtidiga användartransaktioner. Indextransaktionerna lagras i transaktionsloggentempdboch de samtidiga användartransaktionerna lagras i transaktionsloggen för användardatabasen. På så sätt kan användardatabasens transaktionslogg trunkeras under indexeringsoperationen om det behövs. Om loggentempdbinte finns på samma disk som användardatabasloggen konkurrerar inte de två loggarna om samma diskutrymme.Anmärkning
Kontrollera att
tempdbdatabasen och transaktionsloggen har tillräckligt med diskutrymme för att hantera indexåtgärden. Transaktionsloggentempdbkan inte trunkeras förrän indexåtgärden har slutförts.Använd en databasåterställningsmodell som möjliggör minimal loggning av indexåtgärden. Detta kan minska loggens storlek och förhindra att loggen fyller loggutrymmet.
Kör inte onlineindexåtgärden i en explicit transaktion. Loggen klipps inte förrän den explicita transaktionen upphör.