博文

目前显示的是标签为“backup”的博文

利用shell脚本自动备份Mysql数据库

购买 VPS 建立 这个博客 之后,便要考虑备份的问题,首先就是Mysql数据库的备份,可以用这行命令备份数据库: /usr/local/mysql/bin/mysqldump -uUSER -pPASSWORD --database DBNAME > backup.sql 很有可能要备份多个数据库,就可以用编写一个shell脚本: #!/bin/bash #要备份的数据库名,多个数据库用空格分开 databases=(database1 database2 database3) #备份文件要保存的目录 basepath='/root/backup/lveyo.com/mysql/' #循环databases数组 for db in ${databases[*]} do #备份数据库生成SQL文件 /bin/nice -n 19 /usr/local/mysql/bin/mysqldump -uROOTUSER -pPASSWORD --database $db > $basepath$db-$(date +%Y%m%d).sql #将生成的SQL文件压缩 /bin/nice -n 19 tar zPcf $basepath$db-$(date +%Y%m%d).sql.tar.gz $basepath$db-$(date +%Y%m%d).sql #删除7天之前的备份数据 rm -rf $basepath$db-$(date +%Y%m%d -d "7 days ago").sql.tar.gz done #删除生成的SQL文件 rm -rf $basepath/*.sql 利用这个脚本就可以备份多个Mysql数据库了。 利用Linux的Crontab建立计划任务,自动运行这个脚本,就可以实现数据库定时自动备份了。 运行 crontab -e 有可能会提示找不到vi程序而不能编辑,此时需要运行 yum install vim-minimal 安装好vi之后,就可以进入crontab的编辑页,设置每天凌晨4点的时候自动运行。 0 4 * * * /backup_script/auto_mysql_backup.sh 也可以根据自己VPS的情况设置自动运行的时间。