LInux如何定时备份MySQL数据库并删除五天前备份

2025-05-22 08:58:40

1、创建备份文件夹#cd /bak#mkdir mysqldata

2、编写运行脚本#nano -w /usr/sbin/bakmysql.sh注:如使用nano编辑此代码需在每行尾添加'&&'或';'连接符,否则生成的文件名末尾字符为乱码代码:#!/bin/bash# Name:bakmysql.sh# This is a ShellScript For Auto DB Backup and Delete old Backup#backupdir=/bak/mysqlbaktime=` date +%Y%m%d%H `mysql_bin_dir/mysqldump -u user -ppassword dataname1 | gzip > $backupdir/name1$time.sql.gzmysql_bin_dir/mysqldump -u user -ppassword dataname2 | gzip > $backupdir/name2$time.sql.gz#find $backupdir -name "name_*.sql.gz" -type f -mtime +5 -exec rm {} \; > /dev/null 2>&1保存退出

LInux如何定时备份MySQL数据库并删除五天前备份

3、为脚本添加执行权限# chmod +x /usr/sbin/bakmysql.sh4、修改/etc/crontab(在centOS5中测试可行)#nano -w /etc/crontab在最后一行中加入:00 3 * * * root /usr/sbin/bakmysql.sh表示每天3点00分执行备份注:crontab配置文件格式如下:分 时 日 月 周  命令

4、Redhat方法:Redhat的crontab采用按时间调用4个目录(/etc/cron.hourly:每小时;/etc/cron.daily:每天;/etc/cron.weekly:每周;/etc/cron.monthly:每月)中脚本出来运行的方式。Redhat中只需要将刚才编辑的脚本复制到相应的目录即可。重启crontab# /etc/rc.d/init.d/crond restart完成。

5、恢复数据备份文件:非压缩备份文件恢复: #mysql -u root -p dataname < name2008010103.sql从压缩文件直接恢复: #gzip < name2008010103.sql.gz | mysql -u root -p dataname或:# zcat name2008010103.sql.gz| mysql -u root -p (更多服务器教程百度搜索主机侦探)

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢