Snapshot命令快速进行在线备份和恢复的方法是什么

发布时间:2022-01-07 16:52:27 作者:柒染
来源:亿速云 阅读:386

Snapshot命令快速进行在线备份和恢复的方法是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

为何使用 Snapshot

为何使用 snapshot 而不是 tar 或 copy 实用工具?使用 snapshot 时,文件系统被冻结,确保您能获得完整的副本,并且可避免“打开文件”、“正在运行进程”或“文件未找到”等问题。另外,通常无需关闭应用程序,尽管我通常在制作快照前会让应用程序进入静态状态;之后再取消静态状态。

您最多可拥有 JFS2 文件系统的 15 个连续外部快照。在测试环境中升级应用程序时,常见的做法是每次更新文件系统中包含的环境后,都制作一个快照。

进行 JFS2 在线备份是一件非常好的事情,但还需要能够在出现错误时恢复内容。使用 rollback 实用工具,通过指定快照所驻留的设备,可将外部快照回滚到制作快照时的那个点。没有什么比这个功能更好了。要回滚备份快照,可使用 restore 命令。

个人第一项

使用哪种方法来创建快照取决于您最喜欢哪种方法。所以让我们介绍一下各种快照类型:

外部快照

备份快照

如果某个快照遇到空间不足问题,该文件系统的所有快照都将变为无效的 — 换言之,都不可用。在我自己的工作中,我更喜欢外部快照,主要是因为可以根据需要挂载它们,以便更好地查看。

外部快照

文件系统名为 /opt/portal。其大小是 512M,数据文件 281M 多。

# lsfs |grep -w portal /dev/fslv02  --   /opt/portal   jfs2 1048576 rw   yes no # df -m |grep portal /dev/fslv02  512.00 231.60 55%  7  1% /opt/portal # pwd /opt/portal # ls app_be  app_fr  app_nl  lost+found

要创建外部快照,作为一条规则,我用约原始文件系统大小的一半来创建该快照。IBM 文档建议的快照大小是源文件系统的 10 % 到 15 %。但是,我喜欢为快照提供充足的空间,并且从安全性方面来看也是有好处的。在本例中,50 % 的空间相当于 250M。创建快照的常见格式为:

 snapshot -o snapfrom= -o size=

现在创建外部快照:

# snapshot -o snapfrom=/opt/portal -o size=250M Snapshot for file system /opt/portal created on /dev/fslv04

自动创建一个逻辑卷来保存快照。为了确认已创建了快照,使用 snapshot 命令查询相关文件系统的快照,如:

# snapshot -q /opt/portal Snapshots for /opt/portal Current Location   512-blocks  Free Time *  /dev/fslv04   524288  523520 Sun Nov 4 10:57:46 GMT 2012

现在,我可以挂载快照,查看已复制的数据,但首先需要创建挂载快照所需的目录:

# mkdir /snap_portal # mount -v jfs2 -o snapshot /dev/fslv04 /snap_portal # df -m |grep portal /dev/fslv02  512.00 231.60 55%  7  1% /opt/portal /dev/fslv04  256.00 255.62 1%  -  - /snap_portal

现在,我可用 cd 命令进入该快照 (/snap_portal) 文件夹并查看已复制的文件;注意,文件系统是只读的,不允许写入数据:

# cd /snap_portal # ls app_be  app_fr  app_nl  lost+found # ls >file1

file1:The file system has read permission only.

现在,我可以进一步将快照文件系统备份到磁带或 SAN。假设我已对 /opt/portal 执行了某些数据维护操作并且误删除了一个文件,那么只需从已挂载的快照中将被删除的文件复制到 /opt/portal 中。但是,现在我们来创建 /opt/portal 的另一个快照:

# snapshot -o snapfrom=/opt/portal -o size=250M Snapshot for file system /opt/portal created on /dev/fslv05

和前面类似,查询 /opt/portal 的快照:

# snapshot -q /opt/portal Snapshots for /opt/portal Current Location   512-blocks  Free Time /dev/fslv04   524288  523520 Sun Nov 4 10:57:46 GMT 2012 *  /dev/fslv05   524288  523520 Sun Nov 4 11:00:53 GMT 2012

在上面的输出中,* 代表***的快照。如果以后不再需要使用某个快照,可使用 snapshot 命令删除该快照。删除快照的通用格式为:

snapshot -d

例如,要删除 fslv04,我可使用以下命令:

# snapshot -d /dev/fslv04

假设由于某些更新导致 /opt/portal 上出现错误,因此需要恢复整个文件系统。我可以选择要回滚哪个快照。对我而言,这是快照的主要卖点之一。如果已经制作了多个快照,那么就有多个恢复点。在我们的演示中,我将回滚在 10:57 制作的快照,即 /dev/fslv04。首先我要卸载所有快照(如果已挂载的话),然后卸载 /opt/portal,之后执行 rollback 命令。在这个例子中,时间点是 Sunday, Nov. 4 的 10:57。rollback 命令的常见格式为:

rollback -v

进行回滚时,会删除该文件系统的所有快照。要回滚并恢复到原始文件系统 /opt/portal,我可使用:

# umount /opt/portal # rollback -v /opt/portal /dev/fslv04 Restoring block 1 Restoring block 1000 Restoring block 2000 ... Restoring block 12000 Total blocks restored = 12809 rmlv:Logical volume fslv04 is removed. rmlv:Logical volume fslv05 is removed. Rollback complete

要确认没有留下任何快照,可列出快照:

# snapshot -q /opt/portal /opt/portal has no snapshots.

现在,我可以重新挂载 /opt/portal,并且已恢复了文件系统的原始内容!

# mount /opt/portal

备份快照

backsnap 在后台为您完成大部分的工作。它创建逻辑卷来保存快照,然后将内容复制到一个存档文件中或磁带设备上。然后可使用 restore 命令来恢复已备份的文件。使用 /opt/portal 文件系统创建备份快照,让我们看看它是如何工作的。backsnap 命令的常见格式为:

backsnap -m  -s size -f

在这个例子中,我将使用以下值:/backsnap_portal 是临时挂载点;250M 是大小;/opt/dump/backup_portal 是存档文档;/opt/portal 是源文件系统。

# backsnap -m /backsnap_portal -s size=250M -f /opt/dump/backup_portal /opt/portal Snapshot for file system /opt/portal created on /dev/fslv05 backup:Backing up /dev/rfslv05 to /opt/dump/backup_portal. backup:There are an estimated 286768 1k blocks. backup:There are 287321 1k blocks on 1 volumes. backup:The backup is complete.

现在我们有了一个存档文件 backup_portal,它位于目录 /opt/dump 中。看看存档的大小,是 280M:

# du -ms /opt/dump/backup_portal 280.56 backup_portal

要确认文件已位于存档中,我可使用 restore 命令列出各个文件:

# restore -tvf /opt/dump/backup_portal

要从存档文件中将文件 app_be 恢复到 /opt/portal,我可使用:

# cd /opt/portal # restore -xvf /opt/dump/backup_portal app_be. Extracting directories from media. Initializing the symbol table. Extracting requested files.. Specify the next volume number:1 Extracting file ./app_be.

要制作一个快照并将文件置于磁带 rmt0,同时使用以前的备份快照的属性,我可使用:

# backsnap -m /backsnap_portal -s size=250M -f /dev/rmt0 /opt/portal

如果您已制作了快照并且已将内容发送到磁带,可使用 restore 命令列出磁带,如:

# restore -tvf /dev/rmt0

也可使用以下命令列出已制作的快照:

# snapshot -q /opt/portal Snapshots for /opt/portal Current Location   512-blocks  Free Time *    /dev/fslv08   524288  522496 Sun Nov 4 11:30:25 GMT 2012

如果决定要删除快照,已发送到磁带的已存档文件不会发生任何变化,这与删除外部快照不同。也就是,除非您以前将该快照的其他备份发送到某些介质上。

注意空间

作为系统管理员,我相信快照是进行在线备份的出色方式,并且如果出现了错误,还能恢复内容。但是要记住,一定要注意文件系统中已用的空间;您可不想因为空间不足导致最终得到无效的快照吧。

关于Snapshot命令快速进行在线备份和恢复的方法是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

推荐阅读:
  1. mysql简单全量备份脚本和快速恢复的方法
  2. mysql全量备份和快速恢复的方法整理

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

snapshot

上一篇:Full GC和Minor GC是什么

下一篇:c++显式栈如何实现递归

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》