使用 RMAN Oracle11g 恢复备份
Restore Backup with RMAN Oracle11g
在我的数据库崩溃后,我尝试恢复我的备份集。
1.新建一个与旧数据库同名的数据库
2. 将 flash_recovery_area 设置为存储旧数据库备份集的文件夹
3. rman -> connect target / -> restore database;
RMAN 说:没有找到数据。
我怎么说存储备份集的数据库?
谢谢!
如果是新数据库或不同的服务器,我们不能直接恢复数据库,如果是新服务器,我们需要先对备份集进行编目,让 RMAN 知道它的位置。
RMAN> CATALOG START WITH '/<path>/';
RMAN> SET DBID <DBID>
RMAN> RESTORE CONTROLFILE
RMAN> RESTORE DATABASE ;
假设您至少有一份完整的控制文件副本(或控制文件自动备份),您知道 DB_NAME,您知道您的 DBID
1) install exact the same Oracle DB version (only binaries)
2) in $ORACLE_HOME/dbs create "initSID.ora" file with just 1 line DB_NAME=YouDbName (on Linux)
3) SQL> startup nomount
4)
RMAN> run{
RMAN> set DBID 104183017;
RMAN> SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/app/oracle/product/12.1.0.2/dbhome_1/dbs/%F';
RMAN> restore controlfile from autobackup;
RMAN> }
5) SQL> alter database mount;
6) RMAN> restore database;
7) RMAN> recover database;
8) SQL> alter database open resetlogs;
如果你有一个控制文件备份,你不需要目录,否则你需要它。
在我的数据库崩溃后,我尝试恢复我的备份集。 1.新建一个与旧数据库同名的数据库 2. 将 flash_recovery_area 设置为存储旧数据库备份集的文件夹 3. rman -> connect target / -> restore database;
RMAN 说:没有找到数据。
我怎么说存储备份集的数据库?
谢谢!
如果是新数据库或不同的服务器,我们不能直接恢复数据库,如果是新服务器,我们需要先对备份集进行编目,让 RMAN 知道它的位置。
RMAN> CATALOG START WITH '/<path>/';
RMAN> SET DBID <DBID>
RMAN> RESTORE CONTROLFILE
RMAN> RESTORE DATABASE ;
假设您至少有一份完整的控制文件副本(或控制文件自动备份),您知道 DB_NAME,您知道您的 DBID
1) install exact the same Oracle DB version (only binaries)
2) in $ORACLE_HOME/dbs create "initSID.ora" file with just 1 line DB_NAME=YouDbName (on Linux)
3) SQL> startup nomount
4)
RMAN> run{
RMAN> set DBID 104183017;
RMAN> SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/app/oracle/product/12.1.0.2/dbhome_1/dbs/%F';
RMAN> restore controlfile from autobackup;
RMAN> }
5) SQL> alter database mount;
6) RMAN> restore database;
7) RMAN> recover database;
8) SQL> alter database open resetlogs;
如果你有一个控制文件备份,你不需要目录,否则你需要它。