/ Published in: Bash
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
#!/bin/sh # -- backup.sh --------------------------------------------------- # # shell-script + phpmailer: roept het *nix commando 'mysqldump' direct aan # en dumpt het in een .gz bestand, wordt vervolgens door phpmailer als attachment # verstuurd naar opgegeven emailadres # # Waarom phpmailer? Omdat mijn webserver mutt niet ondersteunt en ik toch # een gzip attachment wil versturen :) # # Hoe te gebruiken: # --------------------- # 1. download de laatste versie van phpmailer: http://phpmailer.sourceforge.net # 2. plaats dit bestand + class.phpmailer.php, class.smtp.php (overige bestanden # van phpmailer heb je niet nodig) en mail-backup.php # in je webroot, dus BOVEN je /public_html of /www folder, zodat # men er vanuit de browser niet bij kan # 3. pas de variabelen in dit bestand en in mail-backup.php aan naar believen # 4. chmod=711 backup.sh # 5. cron: /bin/sh /absoluut/pad/naar/backupdir/backup.sh, kies zelf je cron-frequentie # 6. default cron mailer uitzetten; mailing wordt verzorgd door # het mail-backup.php script # ---------------------------------------------------------------- # -- 1. vars declareren ------------------------------------------ # db gegevens - DBNAME wordt gebruikt in naam backupfile DBNAME=je_db_naam DBPASS=je_db_wachtwoord DBUSER=je_db_username # absoluut pad backupdir (bv 'backups'). Gebruik evt. phpinfo() om dit te achterhalen BACKUPDIR=/pad/naar/jouw/webroot/backups # naam sql file, wordt na elke cronjob overschreven SQLGZFILE=$BACKUPDIR/$DBNAME.sql.gz # naam php file die mail verzorgt PHPBACKUPFILE=mail-backup.php # absoluut pad naar mysqldump, standaard is /usr/local/bin/mysqldump MYSQLDUMP=/usr/local/bin/mysqldump # absoluut pad naar php, standaard is /usr/bin/php PHP=/usr/bin/php # -- 2. uitvoeren ------------------------------------------------ # uitvoeren en pijpen (zucht) door gzip $MYSQLDUMP --opt -c -e -Q -u$DBUSER -p$DBPASS $DBNAME | gzip > $SQLGZFILE # php mailer proggel aanroepen $PHP $BACKUPDIR/$PHPBACKUPFILE # -- Changelog --------------------------------------------------- # # 2007-06-20 Ramon Eijkemans <monchito [a] monlog [punt] nl> # * release 1.0, zie http://www.monlog.nl/tools/mysql-backup/ # ----------------------------------------------------------------