Når du opprettholde et nettsted som bruker en MySQL database for å huse en del informasjon, bør du regelmessig lage sikkerhetskopier i tilfelle av server feil . 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 , sparer PHP automatisk all informasjon du angir, i en fil . Tilkobling
Før du kan få tilgang til alle data fra MySQL database, må du opprette en tilkobling til den. PHP mysql_connect funksjonen tar tre parametere - databaseserveren , brukernavn og passord. Bruk denne funksjonen til å opprette forbindelsen. Med det gjort, bruker du " mysql_select_db "-funksjonen og gi en database navn som en parameter for å velge en database som du ønsker å sikkerhetskopiere , eller du kan bruke en " VIS databaser" spørring for å få navnene på hver database på serveren og deretter tilbake opp dem etter tur .
Få Tabeller
Bruk PHP " mysql_query " funksjonen til å sende en " VIS BORD " spørring til databasen, og deretter bruke en while-loop som rekursivt kaller " mysql_fetch_row "-funksjonen for å få hvert bord navn fra resultatene . Lagre disse resultatene i et PHP array. Dette lar deg sikkerhetskopiere dataene i alle tabellene som finnes i databasen, eller bestemte tabeller som du identifisere om du ikke trenger å ta backup av hver enkelt.
Få Records
Bruk en " foreach " loop for å bla gjennom tabellene du vil ta backup av , ved hjelp av PHP variabel med alle de bordet navn . For hvert løp gjennom løkken , send en "SELECT * FROM $ tablename " spørring for å få alle postene i tabellen . Deretter bruker du en nestet for loop og mens loop som , mens loopen ikke har gått gjennom alle dataene, samler poster ett om gangen , formater dataene i det hvordan du vil det skal vises i back- up fil, og føyer dette resultatet til et enkelt PHP variabel . Når ringen er fullført, vil denne variabelen inneholder all informasjonen i MySQL tabellen .
Back -Up File
Bruk PHP " fopen "-funksjon for å åpne en ny skrivbar fil . For filnavnet, bruke " time" -funksjonen for å få gjeldende tidsstempel for å sikre at hver backup fil av databasen er unik og gi den en " . Sql " forlengelse . For eksempel " fopen ( " mysql - backup - " . Tid ( ) . " . Sql "," w + " ) " for å skape en unik fil . Deretter bruker du " fwrite "-funksjonen til å skrive ut innholdet i PHP variabel med all databasen informasjon 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 .