备份策略

1、完全备份:完全备份就是指把所有需要备份的数据全部备份,当然完全备份可以备份整块硬盘,整个分区或某个具体的目录


2、增量备份 : 第一次备份原始数据,第二次备份只备份前一次备份中没有的数据。


Linux系统如何备份mongodb数据库 linux中备份_linux备份


3、第一天备份原始数据,第二天只备份第二天的数据,第三天备份第二天和第三天的数据。(这种备份策略用的比较少)。


Linux系统如何备份mongodb数据库 linux中备份_dump_02


1 、dump备份命令

 dump [选项] 备份之后文件名  需要备份的源文件或目录

 -level 【0~9】 备份级别(0代表完全备份)

  -f 备份的文件名

  -u 保存备份记录 --> /etc/dumpdates

-v显示过程

 

 查看历史备份信息

   -s  统计备份需要的空间

dump -0s /boot

-- 统计备份/boot 需要多大容量

dump -0u -f    /root/boot.dump  /boot

 --完全备份的方式备份/boot分区到文件/root/boot.dump,并且更新/etc/dumpdates数据库文件。“0”代表的就是备份级别为完全备份。“u”更新数据库,会将文件的日期,存储级别,文件系统等信息都记录下来。如果从来都不使用-u参数,那么所有的存储都会变为级别0。因为,系统不会有先前备份过当前文件系统的记录。

当更改了/boot目录可以通过

dump -1u -f /root/boot1.dump /boot

这种方式只会备份在/boot目录中发生改变的文件,如果之后再次有文件更改可以通过制定备份级别的方式进行增量备份。但是对于子目录或者文件只能支持完全备份,如需要备份/usr/local/mysql/data这种情况下dump命令只支持完全备份。

2、restore 查看备份文件和还原


   restore [模式选项] [选项]


  restore 命令常用模式有四种,不能混用。


 




   -i 交互模式 :进入交互模式,手工选择需要恢复的文件。


   -t 查看模式 :用于查看备份文件中有哪些文件。


 


 选项


 -f 备份文件的文件名。


   


  restore -tf 备份文件的绝对路径 --> 查看备份文件信息


   resrore -rf 备份文件的绝对路径 --> 恢复数据


 resrore -if 备份文件的绝对路径 --> 手工恢复指定的文件


 resrore -Cf 备份文件的绝对路径 --> 比较不同的数据






Linux系统如何备份mongodb数据库 linux中备份_linux备份_03


如误删除了标记的这个文件




   使用restore -rf 备份的文件名 即可进行数据的还原


Linux系统如何备份mongodb数据库 linux中备份_restore_04


也可以使用 restore -if 备份的文件名 手工恢复文件

Linux系统如何备份mongodb数据库 linux中备份_dump_05


 使用 ? 查询可操作的选项


 使用 add 选择要恢复的文件


   extract 恢复选定的文件


提示“Specify next volume”时填如1,它表示是在单独一卷磁带(这里我用的是磁盘的空间)上进行的备份。


下面一行提示选“n”,表示不是恢复整个文件系统,而是单个文件。