库文件备份
如下每周备份一次、写一个shell脚本
#!/bin/bash date_now=`date +%Y_%m_%d_%H%M%S` mysqldump -uroot -plixiaoli --flush-logs --master-data=2 maweiqing>/home/backup/${date_now}.sql && zip -r /home/backup/${date_now}.zip /home/backup/${date_now}.sql rm -f /home/backup/${date_now}.sql
获取当前日期,作为库文件备份的文件名
mysqldump命令对数据库maweiqing备份到20151030.sql中
zip命令对文件压个缩。
rm命令删除sql文件
二进制日志备份
二进制文件备份,我建议早晚各一次了。
#!/bin/bash date_now=`date +%Y_%m_%_d_%H%M%S` filename=mysql-bin filesuffix_max=0 filesuffix_lastbutone=0 mysqlpath=/var/lib/mysql/ backuppath=/home/backup/mysqlbinarylog/ mysqladmin -uroot -plixiaoli flush-logs && for fname in `ls $mysqlpath` do filesuffix=${fname##*.} isnum=`expr match ${filesuffix} '[0-9][0-9]*$'` if [ $isnum ] && [ $isnum -ne 0 ] && [ $filesuffix -gt $filesuffix_max ] then filesuffix_lastbutone=$filesuffix_max filesuffix_max=$filesuffix fi done && filefullname=${filename}.${filesuffix_lastbutone} cp $mysqlpath$filefullname $backuppath && zip ${backuppath}${date_now}${filefullname}.zip $backuppath$filefullname && echo "done"
1. 注意,二进制日志备份,需要mysql开启二进制日志。
2. 其文件路径是在/var/lib/mysql/路径下面。
3. mysqladmin 命令进行二进制日志备份。
发表评论