• RMAN Recovery Catalog


    RMAN用来存放数据库元数据的schema。

    the catalog includes the following types of metadata:
    -Data file and archived redo log backup sets and backup pieces
    -Data file copies
    -Archived redo logs and their copies
    -Database structure (tablespaces and datafiles)
    -Stored scripts, which are named user-created sequences of RMAN commands
    -Persistent RMAN configuration settings

    创建Recovery Catalog

    1.配置Recovery Catalog数据库

    2.创建Recovery Catalog的属主

    不可以让sys用户成为Recovery Catalog的属主。

    SQL> create user rman identified by password
      temporary tablespace temp
      default tablespace tools
      quota unlimited on tools;
    SQL> grant recovery_catalog_owner to rman;

    3.执行create catalog命令

    从rman客户端登陆到catalog所在的数据库

    RMAN> connect catalog rman/oracle@catdb
    RMAN> create catalog tablespace cat_tbs;

    验证一下:

    SQL> select table_name from user_tables;

    注册数据库到Recovery Catalog

    $ rman target / catalog rman/oracle@catdb
    
    Recovery Manager: Release 11.2.0.4.0 - Production on Mon Sep 21 09:10:48 2015
    
    Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
    
    connected to target database: DB11 (DBID=1422808181)
    connected to recovery catalog database
    
    RMAN> register database;
    
    database registered in recovery catalog
    starting full resync of recovery catalog
    full resync complete
    
    RMAN> report schema;
    
    Report of database schema for database with db_unique_name DB11
    
    List of Permanent Datafiles
    ===========================
    File Size(MB) Tablespace           RB segs Datafile Name
    ---- -------- -------------------- ------- ------------------------
    1    750      SYSTEM               YES     /u11/app/oracle/oradata/db11/system01.dbf
    2    520      SYSAUX               NO      /u11/app/oracle/oradata/db11/sysaux01.dbf
    3    110      UNDOTBS1             YES     /u11/app/oracle/oradata/db11/undotbs01.dbf
    4    5        USERS                NO      /u11/app/oracle/oradata/db11/users01.dbf
    5    313      EXAMPLE              NO      /u11/app/oracle/oradata/db11/example01.dbf
    
    List of Temporary Files
    =======================
    File Size(MB) Tablespace           Maxsize(MB) Tempfile Name
    ---- -------- -------------------- ----------- --------------------
    1    29       TEMP                 32767       /u11/app/oracle/oradata/db11/temp01.dbf

    向Recovery Catalog中注册备份集

    RMAN> catalog datafilecopy '/disk1/old_datafiles/01_01_2003/users01.dbf';
    RMAN> catalog archivelog '/disk1/arch_logs/archive1_731.dbf', '/disk1/arch_logs/archive1_732.dbf';
    RMAN> catalog backuppiece '/disk1/backups/backup_820.bkp';

    也可以将备份文件放到一个目录下,将整个目录注册进去:

    RMAN> catalog start with '/disk1/backups/';

    下面两个语法是不同的:

    RMAN> CATALOG START WITH '/disk1/backups';           #任何以backups开头的目录都被注册进去
    RMAN> CATALOG START WITH '/disk1/backups/';         #只是注册backups目录

    创建和管理Virtual Private Catalogs

    recovery catalog的拥有者是catowner
    注册的数据库有:prod1、prod2、prod3
    创建数据库用户vpc1,并被授予访问prod1、prod2

    1.创建数据库用户(VPC的拥有者)并授权

        登陆到recovery catalog所在的数据库
        SQL> create user vpc1 identified by vpc1 default tablespace vpcusers quota unlimited on vpcusers;
        SQL> grant recovery_catalog_owner to vpc1;
        SQL> exit;
        
        以base recovery catalog用户身份rman登陆到recovery catalog所在的数据库
        $ rman 
        RMAN> connect catalog catowner@catdb;
        RMAN> grant catalog for database prod1 to vpc1;
        RMAN> grant catalog for database prod2 to vpc1;
        RMAN> grant register database to vpc1;

    2.创建VPC

        $ rman
        RMAN> connect catalog vpc1@catdb;
        RMAN> create virtual catalog;

    3.收回Virtual Private Catalog Owner的权限

        以base recovery catalog用户身份rman登陆到recovery catalog所在的数据库
        $ rman
        RMAN> connect catalog catowner@catdb;
        RMAN> revoke catalog for database prod1 from vpc1;
        RMAN> revoke register database from vpc1;

    4.删除Virtual Private Catalog

        $ rman
        RMAN> connect catalog vpc1@catdb;
        RMAN> drop catalog;

    Stored Scripts
    Stored Scripts有两种:本地的、全局的

    创建Stored Scripts
    本地stored scripts:

    RMAN> create script full_backup{
            backup database plus archivelog;
            delete obsolete;
        }

    全局stored scripts:

    RMAN> create global script global_full_backup
        comment 'use only with archivelog mode databases'
        {
            backup database plus archivelog;
            delete obsolete;
        }

    从其他文件读取创建stored scripts:

    RMAN> create script full_backup 
        from file '/tmp/my_script_file.txt';

    更新stored scripts

    使用关键字replace:

    RMAN> replace script full_backup {
            backup database plus archivelog;
        }

    运行stored scripts

    RMAN> run {
            execute global script global_full_backup;
        }
        
    RMAN> run { 
            execute script full_backup; 
        }

    打印stored scripts
    使用关键字print scripts

    RMAN> print script full_backup;
  • 相关阅读:
    VS.NET2013发布网站的时候去掉.cs文件(预编译)(转)
    vs2013发布网站合并程序是出错(ILmerge.merge:error)
    转:c# Linq 的分页[转]
    AStar 路径规划之初级二
    ASttar 路径规划之初级
    AttributeError: module 'tensorflow' has no attribute 'set_random_seed'
    github提示Permission denied (publickey),如何才能解决?
    机器学习-模型评价指标
    pcl-qt使用QVTKWidget 与PCLVisualizer 显示雷达点云
    pcl-设置多线段宽度和颜色
  • 原文地址:https://www.cnblogs.com/abclife/p/4828688.html
Copyright © 2020-2023  润新知