Script: eenvoudig MySQL backuppen in Gmail

2007 06 21 door monchito | categorieën: leuke proggels tools webdesign 

php codeHet shell-script dat ik gebruik om backups te maken van MONLOG heb ik zojuist op de tools-pagina toegevoegd. Misschien heb jij er ook wat aan. Elke zondagnacht om 04:00u maakt het automatisch een backup (met 'mysqldump'), verzipt het en stuurt de zipfile als attachment naar een Gmail-account. Eenmaal aangekomen in Gmail, wordt het netjes gelabeld zodat ik het later makkelijk kan terugvinden.

Zie voor een download van het script en verdere uitleg de MySQL backup script pagina.

Reacties

Microdesign

door Microdesign, 2007 07 02   Microdesign

cool om het zo te laten backuppen ga dit zeker proberen! ideaal!!!

monchito

door monchito, 2007 07 02   monchito

Laat je het me weten of het goed werkt en alles duidelijk is? :)

Grubb.nl

door Grubb.nl, 2007 09 12   Grubb.nl

Vette shit ouwe! ga zo door

Job

door Job, 2007 10 10

leuk

monchito

door monchito, 2007 10 10

thnx :)

jacqueline

door jacqueline, 2007 11 02

je bent mij al kwijt bij het stuk waar je de shell script moet maken. Hoe maak ik dat ingodsnaam, is dat gewoon een kladblok file en hoe ik save het blijbaar als gz file. maar welke programma kan het nuzo saven? Ik neem aan dat ik het scriptje ergens in moet pasten maar het zal wel geen kladblok zijn

Ramon Eijkemans

door Ramon Eijkemans, 2007 11 02

Hoi Jacqueline, het shell-script is een scriptje met de naam 'backup.sh'. 'Sh' staat voor 'shell'Je kunt deze inderdaad gewoon met kladbok maken, als je er maar aan denkt om het op te slaan met de extensie '.sh' en NIET '.txt' wat standaard is bij kladblok.Dat maken van een 'gz-file' hoef je niet te doen, dat doet het shell-script voor je.Waar je de bestanden kunt opslaan en wat je erin in moet vullen staat beschreven in de handleiding die ik erbij geschreven heb. Probeer het maar eens, het is echt makkelijker dan het op het eerste gezicht lijkt!

Jan

door Jan, 2007 11 19

Hey Ramon,ik ben, net als jij was, op zoek naar een goed script om mijn MySQL database te backuppen. Nu krijg ik jouw script alleen niet helemaal aan de praat. Ik had al eerder problemen met het runnen van een phptje als cronjob, maar dat is me uiteindelijk wel gelukt, dit shell script helaas nog niet. Ik denk dat ik de paden verkeerd heb (het lukte me namelijk ook niet om via php's system() een backup van mijn database te krijgen). Om een phptje te draaien moet ik "/usr/local/bin/php -q -f" voor het path naar mijn phpscript voegen, dus leek het me logisch dat mysqldump in "/usr/local/bin/mysqldump" zou staan, als ik deze locatie uitvoer met php's system dan krijg ik als result 0 terug en het aangemaakte gzip bestand is leeg. ook als ik "/usr/bin/mysqldump" uitvoer heb ik dit probleem. Bovendien weet ik niet zeker hoe ik shell scripts moet uitvoeren met "/bin/sh" lijkt de cronjob niet te werken, maar dat zou ook weer aan foute padverwijzingen in het shellscript kunnen liggen. Ik heb ook nog "/bin/local/sh" geprobeerd en vele combinaties met deze paden, niets werkte bij mij helaas. Weet jij misschien hoe ik achter alle paden kan komen? (phpinfo geeft deze niet weer overigens.) Oh en mocht het van toepassing zijn, cgi-scripts kan ik wel draaien, zou alleen niet weten hoe dat vanuit een cron moet.Bij voorbaat dank, JanP.S. er is 2 dagen geleden een nieuwe PHPMailer uitgekomen (v2).

Ramon Eijkemans

door Ramon Eijkemans, 2007 11 19

Hoi Jan, mbt het vinden van de paden: wellicht kan je dat het beste vragen aan je hosting provider?Het is ook mogelijk dat je hosting provider eea uitgezet heeft mbt beveiliging; het uitvoeren van scripts e.d. Kan geen kwaad om dat ook ff na te vragen lijkt me.Goeie tip trouwens over phpmailer. Ik ga het eens updaten :)

Jan

door Jan, 2007 11 19

Ah, bah. Ik kijk net in DirectAdmin: "Shell Access (ssh) OFF". Betekend dit dat ik ook geen toegang heb tot mysqldump? Of zou ik die nog wel aan moeten kunnen roepen via php's system()?Mvg, Jan

Ramon Eijkemans

door Ramon Eijkemans, 2007 11 19

dat kan wel, maar ook dat moet toegestaan zijn. Als ik me niet vergis, kan dat met de functie exec()

Ramon Eijkemans

door Ramon Eijkemans, 2007 11 19

Ik heb dat overigens met een shell-script gedaan die boven de public_html directory stond; dat zou met een php-script ook moeten gebeuren, voor extra security

Jan

door Jan, 2007 11 19

De support van mijn host is wel snel, maar niet van zo hoge kwaliteit, over het algemeen heb ik binnen 5 minuten een antwoord, ook op zaterdagavond maar hier konden ze me toch niet zo goed mee helpen.Maargoed, ik heb nog even op het net gezocht en kwam op een geweldig script genaamd "phpMyBackupPro". Het script werkt goed en bovendien érg makkelijk in te stellen. Ik ga het nog even bewerken zodat 'ie naar mij mailt (met PHPMailer) met het onderwerp en de bestandsnaam die ik wil en stel deze dan in als cronjob. Script is te downloaden op volgend adres: http://www.phpmybackuppro.netMvg, Jan

monchito

door monchito, 2007 11 20

phpmybackuppro is idd een mooi pakket. Ik heb er ook goede verhalen over gehoord. Ik heb zelf gekozen voor een nog simpeler oplossing, maar kan me voorstellen dat het gebruik van shell-scripts niet altijd op iedere webhoster werkt.Als ik me niet vergis, maakt phpmybackuppro volledig gebruik van php, terwijl ik dus ook nog een shell scriptje gebruik. de code van mij is wel weer een stuk eenvoudiger

Willi

door Willi, 2007 11 23

Jan, ook ik gebruik phpmybackuppro echter om deze in te stellen in een cronjob krijg ik niet voor elkaar. Hoe gaat dat bij jou?

monchito

door monchito, 2007 11 23

Hoi Willi, kijk eens bij de handleiding die ik geschreven heb voor mijn script. daar staat ook eea over cronjobs instellen

Rick

door Rick, 2007 12 20

Hoi monchito,Ik ben je tutorial aan het doorlopen. Alleen loop ik tegen een SMTP vraag aan. Ik maak namelijk voor mijn nieuwsbrief ook gebruik van de PHPmailer, alleen gebruik ik de volgende regels niet:$mail->IsSMTP (); $mail->Host = "localhost"; $mail->SMTPAuth = true; $mail->Username = ""; $mail->Password = "";Ik heb ook geen idee wat er ingevuld moet worden. Kan de database backup ook verzonden worden naar je email zonder die SMTP regels?Zo nee, wat zouden andere opties zijn?Alvast bedankt voor je hulp.Groeten, Rick

monchito

door monchito, 2007 12 21

Hoi Rick, als je gebruik maakt van phpmailer, zul je die regels wel in moeten vullen, omdat het anders niet werkt.Wat je daar precies in moet vullen weet ik ook niet (want ik heb je wachtwoorden niet), maar je eigen hosting provider vast en zeker wel!

Eric Roodhooft

door Eric Roodhooft, 2009 02 03

Ik begrijp niet echt goed waarom je net PHP zou gebruiken om de e-mail te versturen. Dit kan je toch ook rechtstreeks vanuit de shell lijkt me?Begin dit jaar zag ik dit artikel in mijn RSS reader verschijnen: http://www.multidesk.be/artikels/artikel/247/Hoe-maak-ik-eenvoudig-een-back-up-van-mijn-MySQL-database.htmlLijkt mij een zeer duidelijk en overzichtelijk script om een eenvoudige back-up te maken. Het e-mailen van de backup kan volgens mij gewoon door een commando bij aan het mysqldump stuk te voegen, zonder dus PHP te hoeven gaan gebruiken.

monchito

door monchito, 2009 02 03

Hoi Eric,dat kan inderdaad vanuit de shell en dat had ik in eerste instantie ook gedaan.Ik ben echter naderhand phpMailer gaan gebruiken omdat dat makkelijk te configureren is voor allerlei aanvullende opties.Komt bij dat ik beter ben met php dan met shell-scripting :) Ik heb gewoon voor een makkelijke optie gekozen die voor mij ook prima functioneerde, maar ik geloof het zo dat shell-scripting ook een goede optie zou zijn :)Als je verbeteringen hebt, let me know! Zie dat nog steeds veel mensen dit script gebruiken, dus het loont de moeite om het te verbeteren..

Rants/opmerkingen/suggesties?

*
*

Let's get social

Wat is MONLOG

Sinds 2002 is MONLOG het weblog van Ramon Eijkemans, freelance SEO-gun for hire.

Dit weblog bevat how-to's, mijmeringen, soms wat humor. Het gaat vrijwel altijd over SEO. Ik herhaal geen nieuws en doe ook geen pogingen om SEO filosofisch te verklaren. Het doel van dit weblog is om jou van praktische informatie te voorzien!

En dan nog dit: guestpostings zijn welkom! Mail me als je je ei kwijt wil op dit goed rankende podium.

Laatste comments

Volgens mij is het een hele duidelijke tutorial alleen gek...
31.08.2010 door jasonz op Leer een website bouwen met PHP in 5 minuten

@chet Nice!
28.08.2010 door Ramon Eijkemans op custom RSS feeds van NU.nl en SEO

Ditzelfde grapje geldt ook voor video inhoud...
28.08.2010 door chet op custom RSS feeds van NU.nl en SEO

Hoi Kris, ik zou eerlijk gezegd niet weten waarom, maar...
28.08.2010 door Ramon Eijkemans op Gratis SEO scripts? Check MONLOG

Hallo, leuk initiatief.Ik had een vraagje mbt SEO en javas...
27.08.2010 door Kris | Spaarlampen op Gratis SEO scripts? Check MONLOG

Check ;)
27.08.2010 door Ramon Eijkemans op Gratis SEO scripts? Check MONLOG

Ja die ken ik wel :) Het schijnt nog niet mogelijk te zijn...
27.08.2010 door Bjorn van der Neut op Gratis SEO scripts? Check MONLOG

Leuk om te lezen hoe je het gehad hebt, en dan maandag écht...
26.08.2010 door renske op Op SEO avontuur in Moskou

Functioneel was het zeker :)
26.08.2010 door Ramon Eijkemans op Op SEO avontuur in Moskou

Mooi verhaal Ramon, klinkt als een functioneel bedrijfsuitje...
26.08.2010 door Roderick op Op SEO avontuur in Moskou