Databasfiler kan växa snabbt när du använder dem, vilket ibland kan inverka negativt på prestanda. De kan också ibland bli skadade. Du kan använda kommandot Komprimera och reparera databas för att förhindra eller åtgärda dessa problem. Komprimeringsprocessen komprimerar inte data – den gör att databasfilen blir mindre genom att oanvänt utrymme tas bort. Kommandot Komprimera och reparera databas kan också förbättra databasens prestanda.
Tips Dela upp en databas kan förhindra skadade databasfiler och begränsa dataförlusten genom att behålla data i en separat fil som användarna inte kommer åt direkt.
Olika sätt att komprimera och reparera en databas
Det finns flera sätt att komprimera och reparera en databas. En vanlig metod är att automatiskt komprimera och reparera en databas när den stängs. Dessutom kan du köra kommandot Komprimera och reparera databas manuellt när du har en databas öppen och på en databas som inte är öppen.
Innan du börjar
Vidta följande åtgärder innan du påbörjar en komprimerings- och reparationsåtgärd:
-
Säkerhetskopiera databasen Under reparationsprocessen kan det hända att Access trunkerar data från tabeller som är skadade. Ibland kan dessa data återställas från en säkerhetskopia. Utöver den vanliga säkerhetskopieringsstrategin bör du säkerhetskopiera direkt innan du använder kommandot Komprimera och reparera databas . Mer information finns i Skydda dina data med säkerhetskopierings- och återställningsprocesser.
-
Få exklusiv åtkomst till databasen En komprimerings- och reparationsåtgärd kräver exklusiv åtkomst till databasfilen eftersom åtgärden kan störa andra användare. Du bör meddela andra användare inför en planerad komprimerings- och reparationsåtgärd, så att de kan undvika att använda databasen under tiden. Mer information finns i Öppna en befintlig Access-databas.
Informera användarna om hur länge de måste undvika att använda databasen. Om du kör komprimerings- och reparationsåtgärder regelbundet, så bör du anteckna hur lång tid det tar. Då kan du sedan göra mer precisa uppskattningar och ge andra användare råd om hur länge bör låta bli att använda databasen.
-
Få tillräcklig filbehörighet till databasen Om du inte har tillräcklig behörighet och behöver komprimera och reparera en databas kontaktar du systemadministratören för att få hjälp. Mer information finns i Ändringar av fildelning via ett nätverk i Windows.
Komprimera och reparera en databas automatiskt när den stängs
Du kan välja databasalternativet Komprimera vid stängning om du vill komprimera och reparera en databas automatiskt när den stängs. Det här alternativet påverkar enbart den databas som är öppen. Ställ in det här alternativet separat för varje databas som du vill komprimera och reparera automatiskt. I databaser med flera användare kan det hända att du inte vill ställa in det här alternativet eftersom det kan inverka på databasens tillgänglighet.
-
Välj Arkiv > Alternativ.
-
Välj Aktuell databas i dialogrutan Access-alternativ.
-
Markera kryssrutan Komprimera vid stängning under Programalternativ.
-
Välj OK.
-
Stäng och öppna databasen igen för att alternativet ska börja gälla.
Komprimera och reparera en databas som är öppen manuellt
-
Välj Arkiv > Information > Komprimera & reparationsdatabas.
Access skapar en kopia av den komprimerade och reparerade databasen på samma plats.
Komprimera och reparera en databas som inte är öppen manuellt
Använd den här proceduren när du inte kan öppna en Access-databas direkt.
-
Kontrollera att inga andra användare använder databasfilen för närvarande.
-
Starta Access.
-
Dubbelklicka på Tom databas på sidan Mallar.
-
Välj Arkiv > Stäng.
-
Välj Databasverktyg > Komprimera och reparera databas.
-
I dialogrutan Databas att komprimera från bläddrar du till och dubbelklickar på den databas som du vill komprimera och reparera.
Access skapar en kopia av den komprimerade och reparerade databasen på samma plats.
Komprimera och reparera en skadad databas när Du uppmanas att göra det i Access
Om du uppmanas att komprimera och reparera databasen väljer du Ja när du försöker öppna en databasfil som är skadad. Två saker kan hända:
-
Om Access fullständigt reparerar en skadad fil, så visas ett meddelande om att reparationen har slutförts och att du bör kontrollera innehållet i databasen för att säkerställa att allt är som det ska vara.
-
Om Access bara lyckas delvis håller programmet reda på databasobjekt som det inte gick att reparera i en systemtabell med namnet MSysCompactErrors. Access öppnar tabellen MSysCompactErrors i databladsvyn. Om du har en tidigare säkerhetskopia innan databasen skadades kan du använda tabellen MSysCompactErrors för att avgöra vilka objekt som ska importeras till den reparerade databasen. Om du vill visa systemtabeller högerklickar du på namnlisten Navigering och väljer visa systemobjekt i dialogrutan Navigeringsalternativ.
Varför du ska komprimera och reparera en databas
I den här översikten beskrivs hur man kan använda kommandot Komprimera och reparera databas för att förhindra och åtgärda följande problem som ibland kan drabba databaser: filer som blir större med användning och skadade filer.
Databasfiler växer med användning
Allteftersom du lägger till och uppdaterar data i en databas och ändrar dess design, så blir databasfilen större. En del av den här tillväxten kommer från nya data, men en del kommer från andra källor:
-
Access skapar tillfälliga, dolda objekt för att utföra olika uppgifter. Ibland kan dessa tillfälliga objekt finnas kvar i databasen när Access inte längre behöver dem.
-
När du tar bort ett databasobjekt frigörs inte automatiskt det diskutrymme som upptas av objektet – databasfilen använder fortfarande det diskutrymmet, även om objektet tas bort.
När databasfilen fylls upp med resterna av tillfälliga och borttagna objekt, så kan dess prestanda försämras. Objekt kan ta längre tid att öppna, frågor kan ta längre tid än vanligt att köra och vanliga åtgärder verkar rent allmänt ta längre tid.
Databasfiler kan bli skadade
I vissa fall kan databasfiler bli skadade. Om en databasfil delas i ett nätverk och flera användare arbeta direkt med filen samtidigt, så finns det en liten risk att filen skadas. Risken för skador är något större om användare ofta redigerar data i fälten Lång text och risken växer med tiden. Du kan minimera den här risken genom att använda kommandot Komprimera och reparera databas.
Den här typen av skador beror ofta på ett problem med en VBA-modul (Visual Basic for Applications) och utgör ingen risk för dataförlust. Den här typen av skador utgör emellertid en risk för skador i databasdesignen, t.ex. genom att VBA-kod går förlorad eller formulär inte kan användas.
I sällsynta fall leder skadade databasfiler till att data går förlorade. Vanligtvis är den här förlusten begränsad till den sista åtgärden för en användare. en enda ändring av data. När en användare börjar ändra data och ändringen avbryts – till exempel på grund av förlust av nätverkstjänst – markeras databasfilen som skadad. Filen kan repareras, men vissa data kan saknas när reparationen är klar.
Se även
Skydda data med säkerhetskopierings- och återställningsprocesser