Backup Script for PHP MySQL filer

Når du opprettholde et nettsted som bruker en MySQL database for å huse en del informasjon, bør du regelmessig lage sikkerhetskopier i tilfelle serverfeil. Du kan skrive et PHP-script som kobles til og skaper en sikkerhetskopi av MySQL database. Du kan lagre skriptet enten som en funksjon eller rett og slett som en webside selv. Når du kjører skriptet, PHP lagrer automatisk all informasjon du oppgir til en fil.

Forbindelse

Før du kan få tilgang til data fra MySQL-database, må du opprette en forbindelse til det. PHP mysql_connect funksjon tar tre parametere - databaseserveren, brukernavn og passord. Bruk denne funksjonen til å opprette forbindelsen. Med det gjort, bruker du "mysql_select_db" -funksjonen og gi et databasenavn som en parameter for å velge en database som du vil sikkerhetskopiere, eller du kan bruke en "SHOW databaser" spørring for å få navnene på hver database på serveren og deretter sikkerhetskopiere dem etter tur.

Få tabellene

Bruk PHP "mysql_query" -funksjonen for å sende en "VIS BORD" spørring til databasen, og deretter bruke en stund loop som rekursivt kaller "mysql_fetch_row" -funksjonen for å få hver tabell navn fra resultatene. Lagre disse resultatene i en PHP array. Dette lar deg sikkerhetskopiere dataene i alle tabellene som finnes i databasen, eller spesifikke tabeller som du identifisere hvis du ikke trenger å ta backup av hver enkelt.

Få Records

Bruk en "foreach" loop for å bla gjennom tabellene du ønsker å ta backup av, ved hjelp av PHP variabel med alle tabellnavnene. For hver kjøre gjennom løkken, send en "SELECT * FROM $ tabellnavn" spørring for å få alle postene i tabellen. Deretter bruker du en nestet for løkke og mens loop som, mens loopen ikke har gått gjennom alle data, samler poster en om gangen, formaterer dataene i det hvordan du vil at den skal vises i back-up fil, og føyer dette resultatet til en enkelt PHP variabel. Når sløyfen er ferdig, vil denne variabelen inneholder all informasjonen i MySQL tabellen.

Back-Up File

Bruk PHP "fopen" funksjonen for å åpne en ny skrivbar fil. For filnavnet, bruke "tid" -funksjonen for å få gjeldende tidsstempel for å sikre at hver backup fil av databasen er unik og gi den en "sql" forlengelse. For eksempel, skriv "fopen (" mysql-backup- ". Tiden ()." Sql "," w + ")" for å skape en unik fil. Deretter bruker du "fwrite" -funksjonen til å skrive innholdet i PHP variabel med all databaseinformasjon til filen, og deretter bruke "fclose" -funksjonen for å lukke filen trygt. Du kan lage back-up fil enten på en webserver eller en lokal maskin.