Hvordan kan jeg reducere størrelsen på en database?
databaseprogrammet anvender ofte forskellige teknikker til at fremskynde søgningen og leveringen af de oplysninger, der anmodes om. I de fleste tilfælde har disse teknikker form af midlertidige databaser, der er oprettet til at fungere som mellemprodukter og hjælpe dig med at hente de ønskede data hurtigere. Den eneste ulempe ved disse ekstra databaser er, at de vil forbruge ekstra diskplads. I denne artikel vil vi vise dig de forskellige måder, hvorpå du kan reducere din Myskl database størrelse.
hvordan sænker jeg størrelsen på en database?
der er to brede tilgange, du kan tage for at reducere størrelsen på en Myskl-database. Du kan enten prøve at optimere databasestrukturen, eller du kan slette unødvendige data. Nedenfor vil vi undersøge begge teknikker mere detaljeret.
Hvordan fungerer optimering af en database?
som vi nævnte tidligere, opretter databaser ofte interne tabeller i et forsøg på at fremskynde opslagsforespørgsler. Disse yderligere tabeller bliver dog mindre effektive over tid, når du tilføjer nye data og ændrer eksisterende poster. Som sådan er det en god ide at optimere din database fra tid til anden. Ikke blot vil du reducere den samlede størrelse af din database, men du er også tilbøjelige til at se en ydeevne boost samt!
du har to muligheder, når det kommer til at optimere en database på vores delte hostingplatform. Du kan enten bruge vores 1-klik optimering, der er en del af vores Database Manager, eller du kan gå mere hands-on ved hjælp af de værktøjer, som phpMyAdmin.
hvordan optimerer jeg en database ved hjælp af Databaseadministratoren?
du kan nemt og hurtigt optimere alle tabeller i en given database med databasehåndtering i Vores Kontrolpanel. Databaseadministratoren vil være tilgængelig for dig, hvis du bruger vores gratis hjemmeside hosting, premium shared hosting eller en af vores Semi-dedikerede servere. Følg disse trin for at optimere din database:
- gå til afsnittet databasehåndtering i Vores Kontrolpanel.
- Klik på det databasenavn, du ønsker at optimere.
- Åbn fanen Ledelse.
- Klik på indstillingen med titlen 1-klik optimering.
når du har udført ovenstående handlinger, optimeres alle tabeller i din database. Husk, at vores databaseforbrugsstatistikker ikke opdateres i realtid, så du muligvis ikke bemærker en øjeblikkelig forskel i databasebrug. For at lære mere om de forskellige funktioner, som vores Databasemanager har at tilbyde, kan du gennemgå vores komplette guide til Databasemanageren.
hvordan optimerer jeg tabellerne i en phpMyAdmin-Database?
i modsætning til vores Databasemanager, der optimerer alle tabeller i et fald, giver phpMyAdmin dig meget mere detaljeret kontrol, når det kommer til, hvilke tabeller der skal optimeres, og hvilke tabeller der skal forblive uændrede. Nedenfor vil vi undersøge to teknikker til reduktion af bordstørrelser gennem phpMyAdmin: Optimer-indstillingen samt komprimering af data fra tabeller, der bruger InnoDB-lagringsmotoren.
ud over tabeloptimering giver phpMyAdmin dig en overflod af andre muligheder, som du måske finder nyttige. Du kan lære mere om dette praktiske værktøj i vores phpMyAdmin-oversigt.
Hvordan reducerer jeg min bordstørrelse ved hjælp af Optimer-funktionen i phpMyAdmin?
Følg nedenstående trin for at optimere tabellerne i din database ved hjælp af optimeringsfunktionen i phpMyAdmin:
- Åbn sektionen databasehåndtering i kontrolpanelet.
- Klik på det databasenavn, du ønsker at optimere.
- Åbn fanen Ledelse.
- Klik på phpMyAdmin-indstillingen som vist nedenfor:
- phpMyAdmin åbnes nu i en ny fane, og du vil blive præsenteret for listen over tabeller, der indeholder databasen. Placer markeringer foran de tabeller, du ønsker at optimere.
- når du har foretaget dit valg, skal du vælge indstillingen Optimer tabel i rullemenuen. Indstillingen er en del af afsnittet Bordvedligeholdelse:
- når du har valgt kommandoen Optimer tabel, udføres den automatisk, og du skal præsenteres for din forespørgsel. besked:
en ting at huske på er, at indstillingen Optimer tabel udfører forskellige handlinger afhængigt af den lagringsmotor, som dine tabeller bruger. Som sådan kan optionens effekter variere fra tabel til tabel. Dette gælder især, hvis du bruger forskellige lagringsmotorer, og hvis nogle af dine tabeller gennemgår regelmæssige redigeringer, mens andre tabeller forbliver relativt uændrede.
hvordan komprimerer jeg dataene i en Myskl-Database?
som vi tidligere har bemærket, kommer forskellige lagringsmotorer med forskellige funktionssæt. En standout-funktion ved InnoDB-lagringsmotoren er dens evne til at komprimere dine data uden tab af information. Komprimeringen er mest effektiv, hvis dine tabeller har kolonner, der bruger TEXT
, BLO
, VARCHAR
, og VARBINARY
datatyper.
for at køre komprimeringen på en given tabel skal du først sørge for, at den pågældende tabel bruger InnoDB-lagringsmotoren. Du kan finde disse oplysninger i phpmyadmins databasestrukturvisning. Denne visning er lettest tilgængelig ved at klikke på dit databasenavn som vist på skærmbilledet nedenfor:
når du er i strukturvisningen, skal du se en liste over alle tabeller, der er indeholdt i din database. Kolonnen, der viser din aktuelle lagringsmotor, kaldes Type og fremhæves nedenfor:
hvis du ser InnoDB opført som opbevaringsmotor på de borde, du ønsker at komprimere, så er du god til at gå. Hvis du ser nogen anden værdi, skal du dog konvertere din tabel(er) for at bruge InnoDB-lagringsmotoren først. Konverteringen sker ved at udføre en kort kommando. For at komme i gang skal du skifte til fanebladet i phpMyAdmin:
indsæt følgende kode en gang der:
ALTER TABLE my_table ENGINE = InnoDB;
sørg for at erstatte my_table
med navnet på den tabel, du vil konvertere. I vores eksempel konverterer vi en tabel kaldet orders
, så vores kommando ville se sådan ud:
ALTER TABLE orders ENGINE = InnoDB;
når du har indtastet kommandoen, skal du klikke på knappen Gå i nederste højre hjørne for at udføre den. Hvis det lykkes, du skal præsenteres for en succesmeddelelse som den, der er vist nedenfor:
hvis du ønsker at konvertere flere tabeller til InnoDB storage engine, skal du køre ovenstående kommando for hver af dem.
nu hvor dine tabeller bruger InnoDB, kan du fortsætte med den faktiske datakomprimering. Komprimeringen i sig selv er en kort kommando, der også skal køres fra fanen i phpMyAdmin. Her er kommandoen:
ALTER TABLE my_table ROW_FORMAT=COMPRESSED;
ligesom med tabelkonverteringen skal du erstatte my_table
med det faktiske navn på din tabel. Som et eksempel komprimerer vi i nedenstående skærmbillede tabellen kaldet orders
:
når du har indtastet komprimeringskommandoen, skal du trykke på Go-knappen for at udføre den. Hvis du ønsker at komprimere flere tabeller, kan du gøre det ved at køre kommandoen for hver tabel.
Hvordan sletter jeg tabeller ved hjælp af phpMyAdmin?
dit andet alternativ, når det kommer til at frigøre lagerplads, er at fjerne data, som du ikke længere har brug for fra din database. Du kan enten slette individuelle poster eller hele tabeller.
hvis du vil slette en tabel, skal du bare gå til fanen struktur for din database, så du kan se alle dine tabeller. Derefter skal du vælge Drop-indstillingen ved siden af den tabel, du vil slette, og bekræfte dit valg. Dobbelttjek, at du har valgt den korrekte tabel, før du bekræfter sletningen, da denne handling ikke kan fortrydes.
hvis sletning af en hel databasetabel ikke er en mulighed for dig, kan du overveje at fjerne individuelle poster fra forskellige tabeller, som du ikke længere har brug for. Dette kan opnås ved at køre forskellige kommandoer. Nedenfor viser vi en meget grundlæggende kommando, der kan slette en enkelt databasepost.
i dette eksempel bruger vi ovenstående tabel med to rækker. Målet er at fjerne den anden række, mens den første bevares.
du vil bemærke, at alle tabeller normalt har en id-kolonne, der indeholder et unikt nummer, der identificerer den givne post. I vores eksempel kaldes id-kolonnen faktisk id
, men dine tabeller bruger muligvis et andet ord som kolonnens Titel. Når du har fundet den kolonne, der gemmer de unikke identifikatorer for hver post, skal du notere den værdi, der er knyttet til den post (række), du vil slette. Når du har disse oplysninger ved hånden, skal du skifte til fanebladet og køre følgende kommando:
DELETE FROM my_table where id_column = 'my_id';
i ovenstående kode skal du foretage tre udskiftninger:
-
my_table
skal erstattes med navnet på den tabel, du sletter fra. -
id_column
skal erstattes med navnet på den kolonne, der gemmer dine unikke identifikatorer. -
my_id
skal erstattes med den faktiske identifikator for den række, du vil slette.
vores eksempel bruger products
tabellen. Denne tabel har en kolonne id
, og den entydige identifikator for den post, vi ønsker at slette, er 2
. Så vores kommando skal se sådan ud:
når vi trykker på Go-knappen, bliver kommandoen udført, og sletningen vil blive afsluttet. Nu indeholder vores tabel ikke længere den anden post:
hvis du bruger et moderne content management system som f.eks. Manuel sletning af poster fra databasen skal være din sidste udvej.
konklusion
som hjemmesideejer er det altid en god ide at holde øje med din databasebrug. Dette gælder især, hvis du bruger en delt hostingplan, og du har et loft på din databasestørrelse. Hvis du tilfældigvis når din lagergrænse, kan din hjemmeside begynde at vise alle mulige advarsler og fejlmeddelelser, såsom den forvirrende meddelelse “Indsæt kommando nægtet bruger”.