Shell MySQL备份 – 您的解决scheme是什么?

我正在寻找一个很好的解决scheme来备份我的MySQL数据库 – 所有这些。 我希望每个人都至less有自己的文件。 我以后需要FTP能力,但现在不行。 现在我只需要它保存在运行的服务器上。

你用什么?

更新

我想我应该更清楚我所要求的…我正在寻找一个bash脚本,它将利用mysqldump为每个数据库创build单独的备份文件,或者如果表足够大,则为表创build单个文件。

你可以使用这个脚本:

 #!/bin/bash BACKUP_DIR="/opt/backup" MYSQL_USER=your_user MYSQL_PASS=your_pass MYSQL="$(which mysql)" MYSQLDUMP="$(which mysqldump)" GZIP="$(which gzip)" DB_LIST="$($MYSQL -u $MYSQL_USER -p$MYSQL_PASS -Bse 'show databases')" for db in $DB_LIST; do BACKUP_SUBDIR="$BACKUP_DIR/mysql_`date +%Y-%m-%d`" BACKUP_FILE="$BACKUP_SUBDIR/$db.gz" if [ ! -d $BACKUP_SUBDIR ]; then mkdir -p $BACKUP_SUBDIR fi if [ -f $BACKUP_FILE ]; then unlink $BACKUP_FILE fi $MYSQLDUMP -u $MYSQL_USER -p$MYSQL_PASS $db | $GZIP -9 > $BACKUP_FILE done 

我一直在使用这个AutoMySQLBackup脚本为我的mysqldumps。 每天,每周,每月备份和轮换。 非常方便。

我使用一个简单的Bash脚本来执行一个mysqldump,然后一个rsync(轻松使用ftp)到另一个offiste机器。

非常简单,但它的作品!

不需要把数据库放下。

http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

吕克

这个每日备份将创build你的数据库的备份,它会创build4天的备份和旋转。 然后,您可以将该文件夹备份到远程站点。

 #!/ bin / bash -x
 #
 #Marco Maldonado MySQL备份
 #版本1.0 2008年9月9日
 #评论[email protected]

 MYSQL =`哪个mysql`
 MYSQLDUMP =`哪个mysqdump`
 BACKUPS = /select/备份
 dbs =`$ MYSQL -u root -pYOURPASSWORD -Bse'show databases'`

为数据库在$ dbs
做
 rm -rf $ BACKUPS / $ db.3
 mv $ BACKUPS / $ db.2 $ BACKUPS / $ db.3
 mv $ BACKUPS / $ db.1 $ BACKUPS / $ db.2
 mv $ BACKUPS / $ db.0 $ BACKUPS / $ db.1
 #mkdir $ BACKUPS / $ db.0
 #$ HOTCOPY $ userpassword $ db $ BACKUPS / $ db.0
 mysqldump -u root -pIndr @ sN3t $ db> $ BACKUPS / $ db.0
 DONE

确保在/ opt中有一个文件夹,并将其称为备份