mysql数据库存放着网站最核心最有价值的数据。如果由于不可预知的原因造成数据损坏或丢失,对网站的打击是毁灭性的,教训是一次次的。提醒我们一定要做好备份,但是手动备份真的很麻烦。它需要每天手动完成一次。去体力劳动。下面收集几个自动备份mysql数据库的脚本。一般的网站就可以了,但是要注意:如果数据库太大或者系统设置不当,自动备份可能会失败,所以即使使用自动备份,也要记得经常检查备份是否成功,是否备份成功备份数据完整且可用。只需将以下脚本内容保存为mysqlbackup.sh并添加到crontab即可。比如在ssh中输入:crontab-einput:0000*/home/website/mysqlbackup.sh就会在每天00:00自动运行备份脚本。1、自动导出mysql备份并上传到指定的ftp!/bin/bashftp设置Host=FTP_IPUsername=FTP_userPasswd=FTP_passwd备份mysql并导出到文件mysqldump-uuser-ppassworddatabasename>$(date+%Y%m%d)-数据库名.sql压缩备份文件tar-zcvf$(date+%Y%m%d)mysql数据库名.tar.gz$(date+%Y%m%d)*上传到ftpecho"open$Hostuser$Username$Passwdbincd/hzg/promptoffmput$(date+%Y%m%d)mysql数据库名.tar.gzprintf"\n"closebye"|ftp-i-n删除旧备份文件rm-rf$(date+%Y%m%d)-数据库名.sql$(date+%Y%m%d)mysql数据库名.tar.gzrm-rf$(date+%Y%m%d)*rm-rf$(日期+%Y%m%d)*2。自动备份mysql数据库并发送到指定邮箱备份导出mysql数据库到文件mysqldump-uroot-ppassword--databasesdb1db2db3>/home/website/backups/databackup.sql压缩备份文件tarzcf/home/website/backups/databackup.sql.tar.gz/home/website/backups/发送到指定邮箱echo"Subject:DatabaseBackup"|mutt-a/home/website/backups/mysqlbackup.sql.tar.gz-s"Content:databasebackup"www@gmail.com删除旧的备份文件rm-r/home/website/backups/*替换里面的密码-ppassword用你自己的root密码,把db1db2db3替换成你需要备份的数据库的名字。路径和邮箱可以自己替换。也可以使用以下命令直接将mysql备份导出为压缩文件:mysqldump-uuser-ppassword数据库名|gzip-c>$(date+%Y%m%d)-数据库名.sql。
