zoukankan      html  css  js  c++  java
  • DBA之RMAN备份

    13:00
    backup database
     
    backup db :3h
    3h: 产生了10 archive log file
     
    16:00 finish
    restore database;
    13:00 : datafile不一致(因为没有备份archive log,controlfile)
     
    job调用方式
    vi /tmp/1.rcv
    CONFIGURE CONTROLFILE AUTOBACKUP ON;
     
    方式一  :   rman target / @'/tmp/1.rcv'
     
    方式二 :rman target / cmdfile=/tmp/1.rcv log=/tmp/rman.log
     
    方式三  : sh script
    内容如下
    #!/bin/sh
    rman target  log=/tmp/rman.log append <<EOF
    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    EOF; 
     
    ---------------------------------------------------------------------------------------
    备份策略
    CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
    一般的我们这样设置
    configure retention policy to recovery window of 30 days;
     
    最简单的可恢复的备份
    run{
         backup database including archivelog format '/backup/db_%d_%s_%p_%T.bkp';
         backup current controlfile format '/backup/cf_%d_%s_%p_%T.bkp';
    }
     
    标准备份
    online 
    run{
         allocate channel c1 type disk maxpiecesize=20G;
         allocate channel c2 type disk maxpiecesize=20G;
         sql 'alter system archive log current';     
         backup database format '/backup/db_%d_%s_%p_%T.bkp' tag 'db_backup_full';
         backup archivelog all delete input format '/backup/log_%d_%s_%p_%T.bkp' tag 'log_backup_full';  
         backup current controlfile format '/backup/cf_%d_%s_%p_%T.bkp' tag 'cf_backup_full';
         backup spfile format '/backup/pr_%d_%s_%p_%T.bkp' tag 'pr_backup_full';
    }
    备份顺序不能返(1.database->2.archivelog->3.controlfile->4.spfile)
     
     
    offline
    run{
         allocate channel c1 type disk maxpiecesize=20G;
         allocate channel c2 type disk maxpiecesize=20G;
         sql 'alter system archive log current';     
         backup database format '/backup/db_%d_%s_%p_%T.bkp' tag 'db_backup_full'; 
         backup current controlfile format '/backup/cf_%d_%s_%p_%T.bkp' tag 'cf_backup_full';
         backup spfile format '/backup/pr_%d_%s_%p_%T.bkp' tag 'pr_backup_full';
    }
    少了archivelog的备份
     
     
    备份完后查看备份情况
    list backup;
     
    offline的恢复(冷备)
    startup force nomount;
    restore controlfile;
    alter database mount;
    restore database;
    recover database noredo;
    alter database open resetlogs;
     
    ------------------------------------------------------------------
    report schema;列出当前数据库的文件分布
     
     
    数据文件丢失恢复:
    数据库mount模式下:
    restore datafile 5;
    recovery datafile 5;
    alter database open;
     
    控制文件丢失恢复:
    shutdown abort;
    startup mount;
    show parameter control
    cp file1 file2
     
    ls -ltr
    restore controlfile from autobackup;
    或者 restore controlfile from '/back/....';
    alter database mount;
    recover database;
    alter database open resetlogs;
     
    1.good : backup database
    2.file 5: restore recover
    3.good
    4.controlfile error
    5.restore controlfile
     
    --------------------------------------------------------------
    删除备份
    run{
         delete force noprompt backup;
         delete force noprompt copy;
         delete force noprompt archivelog all;
    }
     
    delete backupset 13(BS Key);
    delete obsolete;

     
     
    模拟数据库全库删掉整库恢复
    查看数据库是否状态正常
    select open_mode from v$database;
     
     
    report schema;
    rm -r /orcl/datafile
     
    restore database;
    恢复过程中查看IO
    iostat 1
    asm的好处数据库使用盘读写很均匀 普通文件系统没办法做到
    recover database;通过归档日志做前滚
    alter database open resetlogs;
     
    数据库server 重启
    srvctl stop database -d orcl
    srvctl start database -d orcl
     
     

    数据库恢复至少需要的文件
    1. controlfile * 1
    2. system *1
              sysaux * 1
    1. redolog * 2 
              undo * 1
     
    将临时文件temp datafile删掉。 数据库能正常起来
    这些场景会用到temp表空间order by , distinct , union, group by , join (PGA不够时会用到temp表空间)
     
    alter tablespace temp add tempfile '***/' size **M autoextend on next 10M maxsize 8192M;
    恢复temp(建temp2并切换,再建temp再切换回temp)
    1.create temporary tablespace temp2 tempfile '***/' size **M autoextend on next 10M maxsize 8192M;
    2.alter database default temporary tablespace temp2;
    3.drop tablespace temp including contents and datafiles;
    4.create temporary tablespace temp tempfile '***/' size **M autoextend on next 10M maxsize 8192M;
    5.alter database default temporary tablespace temp;
    6.drop tablespace temp2 including contents and datafiles;
  • 相关阅读:
    走线规范-标识
    python学习之网路操作
    python学习之函数
    RTT学习之软件包
    RT_THREAD之组件学习
    RT_THREAD之nano学习
    物联网相关的模块
    JavaScript学习笔记之二
    javascript完美实现图片拖动改变顺序
    响应式WEB设计的9项基本原则
  • 原文地址:https://www.cnblogs.com/willsun8023/p/5071131.html
Copyright © 2011-2022 走看看