数据库恢复

 

1.正在用的current中redo段日志被删除,只能启动到mount状态,如何启库
    首先启动到mount阶段
    sql>select member from v$logfile;
    sql>alter database clear unarchived logfile group 1;
    sql>alter database clear unarchived logfile group 2;
    sql>alter database clear unarchived logfile group 3;
    sql>alter database open;
    sql>select status from v$instance;
 
2.将控制文件control1删除,无法启动,如何启库
    第一种方法:
    sql>create pfile=‘/home/oracle/test.ora‘ from spfile=‘?/dbs/spfileorcl.ora‘;
    vi test.ora
    将控制文件有关control1的参数删掉,只留下control2的参数
    sql>startup pfile=‘/home/oracle/test.ora‘;
 
    第二种方法:
    找到控制文件的位置
    sql>show parameter control;
    我的测试环境在$ORACLE_BASE下的fast_recovery_area/orcl里的control2.ctl
    然后将control2.ctl复制到$ORACLE_HOME/oradata/orcl里
    cp control02.ctl ../../../.././control01.ctl
 
    第三种方法:
    rman恢复控制文件
    首先备份控制文件
    之后在rman里restore controlfile from autobackup;
    recover database;
    alter database open resetlogs;
 
    3.删除了数据文件,怎么恢复数据库
    rman target /
    备份数据文件以及表空间(实际是表结构里的数据)
    backup datafile 4;
    backup tablespace users;
    rman中使用list failure查看失败操作
    看rman建议恢复的文件advise failure
    挨个执行即可restore datafile 4;
    recover datafile 4;
    alter database open即可;

数据库恢复

上一篇:PowerPlatform-On-premise data gateway使用本地文件或DB的介绍


下一篇:mysql 存储过程与存储函数