• 技术文章 >数据库 >mysql教程

    RMAN的备份集增量备份

    2016-06-07 17:09:49原创462

    在做传统的Oracle备份的时候,是使用操作系统的文件拷贝对数据库的文件进行备份,备份的粒度是数据文件,数据文件可能很大,但里面都

    在做传统的Oracle备份的时候,是使用操作系统的文件拷贝对数据库的文件进行备份,备份的粒度是数据文件,数据文件可能很大,但里面都是空块,没有Oracle的数据,但由于是文件拷贝,所以需要备份整个文件.

    RAMN的备份集备份值备份已经用过的数据块,而且能够进行增量备份.

    一般用到的增量备份有三种形式:

    0级增量备份,包含所有已经用到的数据块.

    差异备份,包含从上一次备份(可以是0级增量备份,差异备份,累计备份)到目前的改动过的数据块.

    累计备份,包含从上一次0级增量备份到目前的改动过的数据块.

    每次0级备份形成一个新的备份周期.

    例如下面的一个备份策略,每个周日晚上0级增量备份,周三晚上1级累计备份,其他晚上1级差异备份.

    备份集中包含的块如下所示:



    下面模拟一下这个步骤

    对于基础的RMAN操作,请参照

    1,在周日做0级备份

    RMAN> run{
    2> allocate channel c1 type disk;
    3> backup incremental level 0 database format 'D:\oracle\rmanrep\butdblv0%U.dmp';
    4> }

    2,周日到周一数据库中数据变化:insert into test values(1,'monday lv1D');

    RMAN> run{
    2> allocate channel c1 type disk;
    3> backup incremental level 1 database format 'D:\oracle\rmanrep\butdblv2d1%U.dmp';
    4> }
    3,周一到周二数据库中数据变化:insert into test values(2,'Tuesday lv1D');
    RMAN> run{
    2> allocate channel c1 type disk;
    3> backup incremental level 1 database format 'D:\oracle\rmanrep\butdblv2d2%U.dmp';
    4> }

    4,周二到周三数据库中数据变化:insert into test values(3,'Wednesday lv1C');
    RMAN> run{
    2> allocate channel c1 type disk;
    3> backup incremental level 1 cumulative database format 'D:\oracle\rmanrep\butdblv1d3%U.dmp';
    4> }

    周四,周五,周六和上面2,3步类似.

    在下一个周日的时候,做0级备份,一个新的备份周期开始.

    * 在OCP的书上说的1级差异备份的语法为 backup incremental level 1 differential database,我在操作过程中

    RMAN提示语法错误: RMAN-01008: the bad identifier was: differential

    linux

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    上一篇:两台MySQL数据库数据同步实现 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 一起聊聊MySQL动态SQL拼接• 实例分析MySQL中pt-query-digest工具的使用记录• MySQL关于Count函数的用法区别总结• 学习MySQL必须了解的13个关键字(总结分享)• MySQL基本操作(CRUD)详解
    1/1

    PHP中文网