Gå til innhold

script som sjekker størrelse på tabell og sletter


Anbefalte innlegg

Hei. Jeg har søkt høyt og lavt etter et script som kan

sjekke størrelsen på en mysql tabell, og slette de f.eks 200

eldste postene hvis tabellen blir over en bestemt størrelse (f.eks 10 MB).

 

Ser for meg å kjøre et slik skript gjennom cron.

Vet ikke om PHP egner seg til dette ?

Kanskje shell script eller Perl er bedre egnet ?

 

Setter pris på om noen kan vise noen eksempel på hvordan dette kan gjøres ?

Lenke til kommentar
Videoannonse
Annonse

Det finnes ingen grunner til at dette ikke skal løses med nettopp PHP.

 

For å finne ut tabellstørrelsen så er det beste om du har tilgang til mappen med databasene - da er det bare å sjekke. Har du ikke det så finner du informasjonen du trenger med SQL: SHOW TABLE STATUS

 

På en optimalisert tabell finner du der størrelsen ved å legge sammen Data_length og Index_length. Størrelsen er der oppgitt i antall tegn/Bytes.

 

Alt du gjør da er å sjekke hvis den er større enn 10 MB, er den det så kjører du en ny spørring som slette de elste bildene, f.eks. DELETE FROM tabellnavn LIMIT 200.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...