关于在linux系统进行增量备份的方法
1. dump/restore 进行增量备份 注意,这种方法只能进行整个分区备份
# mount /dev/sdb1 /mnt/sdb 新建一个硬盘将其挂载到/mnt/sdb
# ls /mnt/sdb
123 456 aaa.zip f1
里面有4个文件 f1为目录
现在可以备份原始镜像
#dump -0u /dev/sdb1 -f /backup/sdb1_0u_110210.dump
DUMP: Date of this level 0 dump: Thu Feb 10 23:21:40 2011
DUMP: Dumping /dev/sdb1 (/mnt/sdb) to /backup/sdb_0u_110210.dump
DUMP: Label: none
.....中间省略
DUMP: Average transfer rate: 5687 kB/s
DUMP: DUMP IS DONE
备份完成
dump -0u : 0代表镜像备份(完整备份) 1-9 分别代表在前一个级别基础上的增量备份
下面进行增量备份:
将123那个文件删除,新增一个文件kkk 并输入hello man!
[root@mysql1 sdb]# ls
456 aaa.zip f1 kkk
开始增量备份:
[root@mysql1 sdb]# dump -1u /dev/sdb1 -f /backup/sdb1_1u_110210.dump
DUMP: Average transfer rate: 0 kB/s
DUMP: DUMP IS DONE
现在/backup下有两个备份了.
[root@mysql1 sdb]# ls /backup
sdb1_0u_110210.dump sdb1_1u_110210.dump
为了更好了解我们在增加一个备份,备份之前我们再改变以下分区里面的文件
修改 456 内容为456 modifiy 删除aaa.zip
[root@mysql1 sdb]# ls
456 f1 kkk
备份第二个增量,这里用3u 只要比前面大就可以了,建议备份都用2u 4u 6u 这样备份,不然你所有数字都用上,123456 如果想重新再2u的基础上再备份就不行了,3已经用了,你只能在6后面备份
[root@mysql1 sdb]# dump -3u /dev/sdb1 -f /backup/sdb1_3u_110210.dump
备份完毕 就删除里面的所有记录
然后现在开始恢复
[root@mysql1 sdb]# restore -r -f /backup/sdb1_0u_110210.dump 先恢复0u
[root@mysql1 sdb]# ls
123 456 aaa.zip f1 restoresymtable
这时候把第一备份都还原出来了,然后一个一个还原
# restore -r -f /backup/sdb1_1u_110210.dump
# restore -r -f /backup/sdb1_3u_110210.dump
# ls
456 f1 kkk restoresymtable
和一次备份一样了
查看备份镜像里面的内容
# restore -t -f /backup/sdb1_1u_110210.dump
Dump date: Thu Feb 10 23:28:38 2011
Dumped from: Thu Feb 10 23:21:40 2011
Level 1 dump of /mnt/sdb on mysql1.dog.com:/dev/sdb1
Label: none
2 .
16 ./kkk
提取镜像里的文件
[root@mysql1 sdb]# restore -if /backup/sdb1_3u_110210.dump
restore > ls
.:
3 f1/ lost found/ restoresymtable
456 kkk newfile
restore > add kkk
restore > extract
You have not read any volumes yet.
Unless you know which volume your file(s) are on you should start
with the last volume and work towards the first.
Specify next volume # (none if no more volumes): 1
set owner/mode for ''.''? [yn] n
restore > quit
关于定期备份的方案:
先做一个完整的备份
#dump -0u /dev/sdb1 -f /backup/sdb1_0u_110210.dump
周一:#dump -2u /dev/sdb1 -f /backup/sdb1_1u_110210.dump
周二:#dump -2u /dev/sdb1 -f /backup/sdb1_2u_110210.dump
周三:#dump -2u /dev/sdb1 -f /backup/sdb1_3u_110210.dump
.....
--------------------------------------------------------------------------------------------------------------------
下面这方法比较灵活,直接用tar备份 |