YourWebSolution
14/02/10, 13:54
Heren,
Wellicht is dit nog wel eens makkelijk, onderstaande is zelf in elkaar gezet.
Onderstaand script maakt een backup van alle databases, en upload deze via FTP naar een andere server. Backups worden 3 dagen lokaal bewaard.
Hiervoor heb ik een apparte mysql user aangemaakt, met global privileges:
- Select
- Show View
- Show Databases
- Lock Tables
Mocht iemand er iets aan hebben, veel plezier ermee! :thumbup:
mysqluser=
mysqlpass=
mysql_backup=/export/backups/mysql
mysqldump=/usr/bin/mysqldump
mysql=/usr/bin/mysql
gzip=/usr/bin/gzip
ftp_host=
ftp_user=
ftp_password=
ftp_remote=/backup/
# MYSQL Database Backup
databases=`echo show databases |$mysql -u$mysqluser -p$mysqlpass | tail -n +2`
for database in $databases; do
filename=$mysql_backup/`date +%Y-%m-%d`-$database.sql.gz
$mysqldump --user=$mysqluser --password=$mysqlpass --opt $database |$gzip >$filename | ncftpput -u $ftp_user -p $ftp_password $ftp_host $ftp_remote $filename
done
#DATA Cleanup
rm -f `find $mysql_backup -type f -mtime +2 -print`
exit 0
Wellicht is dit nog wel eens makkelijk, onderstaande is zelf in elkaar gezet.
Onderstaand script maakt een backup van alle databases, en upload deze via FTP naar een andere server. Backups worden 3 dagen lokaal bewaard.
Hiervoor heb ik een apparte mysql user aangemaakt, met global privileges:
- Select
- Show View
- Show Databases
- Lock Tables
Mocht iemand er iets aan hebben, veel plezier ermee! :thumbup:
mysqluser=
mysqlpass=
mysql_backup=/export/backups/mysql
mysqldump=/usr/bin/mysqldump
mysql=/usr/bin/mysql
gzip=/usr/bin/gzip
ftp_host=
ftp_user=
ftp_password=
ftp_remote=/backup/
# MYSQL Database Backup
databases=`echo show databases |$mysql -u$mysqluser -p$mysqlpass | tail -n +2`
for database in $databases; do
filename=$mysql_backup/`date +%Y-%m-%d`-$database.sql.gz
$mysqldump --user=$mysqluser --password=$mysqlpass --opt $database |$gzip >$filename | ncftpput -u $ftp_user -p $ftp_password $ftp_host $ftp_remote $filename
done
#DATA Cleanup
rm -f `find $mysql_backup -type f -mtime +2 -print`
exit 0