利用RMANIMAGECOPY,启动新的数据库-创新互联

  通过IMAGE COPY技术,可以得到一个数据库的完整副本,快速打开数据库,避免数据库还原和恢复的漫长时间。下面是利用IMAGE COPY进行一个数据库完整恢复的案例。由于该测试是在同一台数据库主机上面进行,因此需要注意ORACLE_SID环境变量,以及相关路径下的文件不能被覆盖。

洪江ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!

--1. 创建DB 0级 IMAGE COPY 备份

[oracle@sqlaudit ~]$ rman target / RMAN> BACKUP AS COPY INCREMENTAL LEVEL 0 TAG 'SRCDB-IMAGE' DATABASE FORMAT '/oradata/srcdb_img/SRCDB-LVL0-%U';

--2. 创建测试数据

[oracle@sqlaudit ~]$ sqlplus / as sysdba SQL> create table scott.test_backup     2  as   3  select rownum rn from dual connect by rownum <= 1000000;

--3. 创建DB 1级 IMAGE COPY 备份

RMAN> BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF TAG 'SRCDB-IMAGE' DATABASE FORMAT '/oradata/srcdb_img/SRCDB-LVL1-%U' PLUS ARCHIVELOG; Starting backup at 2018-01-31 07:48:41 current log archived using channel ORA_DISK_1 channel ORA_DISK_1: starting archived log backup set channel ORA_DISK_1: specifying archived log(s) in backup set input archived log thread=1 sequence=2 RECID=1 STAMP=961989888 input archived log thread=1 sequence=3 RECID=2 STAMP=966842424 input archived log thread=1 sequence=4 RECID=3 STAMP=966842833 input archived log thread=1 sequence=5 RECID=4 STAMP=966842838 input archived log thread=1 sequence=6 RECID=5 STAMP=966842911 input archived log thread=1 sequence=7 RECID=6 STAMP=966842915 input archived log thread=1 sequence=8 RECID=7 STAMP=966844055 input archived log thread=1 sequence=9 RECID=8 STAMP=966844059 input archived log thread=1 sequence=10 RECID=9 STAMP=966844121 channel ORA_DISK_1: starting piece 1 at 2018-01-31 07:48:42 channel ORA_DISK_1: finished piece 1 at 2018-01-31 07:48:43 piece handle=/oracle/app/oracle/product/11.2.0.4/db_1/dbs/12sq1nmp_1_1 tag=SRCDB-IMAGE comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 2018-01-31 07:48:43 Starting backup at 2018-01-31 07:48:43 using channel ORA_DISK_1 channel ORA_DISK_1: starting incremental level 1 datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00001 name=/oracle/app/oracle/oradata/srcdb/system01.dbf input datafile file number=00002 name=/oracle/app/oracle/oradata/srcdb/sysaux01.dbf input datafile file number=00005 name=/oracle/app/oracle/oradata/srcdb/ggtbs01.dbf input datafile file number=00003 name=/oracle/app/oracle/oradata/srcdb/undotbs01.dbf input datafile file number=00004 name=/oracle/app/oracle/oradata/srcdb/users01.dbf channel ORA_DISK_1: starting piece 1 at 2018-01-31 07:48:43 channel ORA_DISK_1: finished piece 1 at 2018-01-31 07:48:44 piece handle=/oradata/srcdb_img/SRCDB-LVL1-13sq1nmr_1_1 tag=SRCDB-IMAGE comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 channel ORA_DISK_1: starting incremental level 1 datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set including current control file in backup set including current SPFILE in backup set channel ORA_DISK_1: starting piece 1 at 2018-01-31 07:48:45 channel ORA_DISK_1: finished piece 1 at 2018-01-31 07:48:46 piece handle=/oradata/srcdb_img/SRCDB-LVL1-14sq1nms_1_1 tag=SRCDB-IMAGE comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 2018-01-31 07:48:46 Starting backup at 2018-01-31 07:48:46 current log archived using channel ORA_DISK_1 channel ORA_DISK_1: starting archived log backup set channel ORA_DISK_1: specifying archived log(s) in backup set input archived log thread=1 sequence=11 RECID=10 STAMP=966844126 channel ORA_DISK_1: starting piece 1 at 2018-01-31 07:48:46 channel ORA_DISK_1: finished piece 1 at 2018-01-31 07:48:47 piece handle=/oracle/app/oracle/product/11.2.0.4/db_1/dbs/15sq1nmu_1_1 tag=SRCDB-IMAGE comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 2018-01-31 07:48:47

--4. 对 DB 0级 IMAGE COPY 备份进行恢复操作

RMAN> RECOVER COPY OF DATABASE WITH TAG 'SRCDB-IMAGE'; Starting recover at 2018-01-31 07:48:57 using channel ORA_DISK_1 channel ORA_DISK_1: starting incremental datafile backup set restore channel ORA_DISK_1: specifying datafile copies to recover recovering datafile copy file number=00001 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-SYSTEM_FNO-1_0nsq1niv recovering datafile copy file number=00002 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-SYSAUX_FNO-2_0osq1nj2 recovering datafile copy file number=00003 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-UNDOTBS1_FNO-3_0qsq1njk recovering datafile copy file number=00004 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-USERS_FNO-4_0rsq1njl recovering datafile copy file number=00005 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-GGTBS_FNO-5_0psq1njh channel ORA_DISK_1: reading from backup piece /oradata/srcdb_img/SRCDB-LVL1-0vsq1nko_1_1 channel ORA_DISK_1: piece handle=/oradata/srcdb_img/SRCDB-LVL1-0vsq1nko_1_1 tag=SRCDB-IMAGE channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:00:01 channel ORA_DISK_1: starting incremental datafile backup set restore channel ORA_DISK_1: specifying datafile copies to recover recovering datafile copy file number=00001 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-SYSTEM_FNO-1_0nsq1niv recovering datafile copy file number=00002 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-SYSAUX_FNO-2_0osq1nj2 recovering datafile copy file number=00003 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-UNDOTBS1_FNO-3_0qsq1njk recovering datafile copy file number=00004 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-USERS_FNO-4_0rsq1njl recovering datafile copy file number=00005 name=/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-GGTBS_FNO-5_0psq1njh channel ORA_DISK_1: reading from backup piece /oradata/srcdb_img/SRCDB-LVL1-13sq1nmr_1_1 channel ORA_DISK_1: piece handle=/oradata/srcdb_img/SRCDB-LVL1-13sq1nmr_1_1 tag=SRCDB-IMAGE channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:00:01 Finished recover at 2018-01-31 07:48:59

--5. 源库执行备份控制文件操作,获取日志中的信息

SQL> alter database backup controlfile to trace; --    Set #1. NORESETLOGS case STARTUP NOMOUNT CREATE CONTROLFILE REUSE DATABASE "SRCDB" NORESETLOGS FORCE LOGGING ARCHIVELOG ...... ;

--6. 创建新的对象,用于后续完全恢复时进行稽核

SQL> create table scott.test22 (id number); SQL> alter system switch logfile; SQL> shutdown immediate;

--7. 创建 IMAGE COPY 数据库所需的参数文件(参数文件中的db_name不能修改,audit_file_dest与control_files路径要进行调整)

[oracle@sqlaudit ~]$ cd $ORACLE_HOME/dbs [oracle@sqlaudit dbs]$ cp orapwsrcdb orapwsrcdbnew [oracle@sqlaudit dbs]$ strings spfilesrcdb.ora > initsrcdbnew.ora [oracle@sqlaudit dbs]$ cat initsrcdbnew.ora | grep '/oracle/' *.audit_file_dest='/oracle/app/oracle/admin/srcdbnew/adump' *.control_files='/oradata/srcdb_img/control01.ctl','/oradata/srcdb_img/control02.ctl' [oracle@sqlaudit dbs]$ mkdir -p /oracle/app/oracle/admin/srcdbnew/adump

--8. 启动数据库实例

[oracle@sqlaudit dbs]$ export ORACLE_SID=srcdbnew [oracle@sqlaudit dbs]$ sqlplus / as sysdba SQL> startup nomount;

--9. 复制在线日志文件到新目录用于完全恢复

[oracle@sqlaudit archive]$ cp /oracle/app/oracle/oradata/srcdb/redo01.log /oradata/srcdb_img/redo01.log [oracle@sqlaudit archive]$ cp /oracle/app/oracle/oradata/srcdb/redo02.log /oradata/srcdb_img/redo02.log [oracle@sqlaudit archive]$ cp /oracle/app/oracle/oradata/srcdb/redo03.log /oradata/srcdb_img/redo03.log

--10. 重建控制文件

CREATE CONTROLFILE REUSE DATABASE "SRCDB" NORESETLOGS     MAXLOGFILES 16     MAXLOGMEMBERS 3     MAXDATAFILES 100     MAXINSTANCES 8     MAXLOGHISTORY 292 LOGFILE   GROUP 1 '/oradata/srcdb_img/redo01.log'  SIZE 50M BLOCKSIZE 512,   GROUP 2 '/oradata/srcdb_img/redo02.log'  SIZE 50M BLOCKSIZE 512,   GROUP 3 '/oradata/srcdb_img/redo03.log'  SIZE 50M BLOCKSIZE 512 DATAFILE   '/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-SYSTEM_FNO-1_0nsq1niv',   '/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-SYSAUX_FNO-2_0osq1nj2',   '/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-UNDOTBS1_FNO-3_0qsq1njk',   '/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-USERS_FNO-4_0rsq1njl',   '/oradata/srcdb_img/SRCDB-LVL0-data_D-SRCDB_I-595837900_TS-GGTBS_FNO-5_0psq1njh' CHARACTER SET WE8MSWIN1252 ; SQL> SELECT NAME FROM V$DATAFILE;

--11. 源库检查检查需要注册的日志文件

[oracle@sqlaudit dbs]$ export ORACLE_SID=srcdb SQL> startup mount; RMAN> list backup of archivelog all; BS Key  Size      Device Type Elapsed Time Completion Time     ------- ---------- ----------- ------------ ------------------- 19      3.50K      DISK        00:00:00    2018-01-31 07:48:46         BP Key: 19  Status: AVAILABLE  Compressed: NO  Tag: SRCDB-IMAGE         Piece Name: /oracle/app/oracle/product/11.2.0.4/db_1/dbs/15sq1nmu_1_1   List of Archived Logs in backup set 19   Thrd Seq    Low SCN    Low Time            Next SCN  Next Time   ---- ------- ---------- ------------------- ---------- ---------   1    11      969636    2018-01-31 07:48:41 969648    2018-01-31 07:48:46

--12. 新库注册源库的日志文件

SQL> ALTER DATABASE REGISTER LOGFILE '/oracle/archive/1_11_961988430.dbf'; SQL> ALTER DATABASE REGISTER LOGFILE '/oracle/archive/1_12_961988430.dbf'; SQL> ALTER DATABASE REGISTER LOGFILE '/oracle/archive/1_13_961988430.dbf'; SQL> ALTER DATABASE REGISTER LOGFILE '/oracle/archive/1_14_961988430.dbf'; SQL> RECOVER DATABASE; SQL> ALTER DATABASE OPEN;

--13. 创建新的临时文件

SQL> ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata/srcdb_img/temp01.dbf' SIZE 100M AUTOEXTEND OFF;

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

网站标题:利用RMANIMAGECOPY,启动新的数据库-创新互联
转载注明:https://www.cdcxhl.com/article34/dopspe.html

成都网站建设公司_创新互联,为您提供虚拟主机品牌网站制作用户体验外贸网站建设企业网站制作营销型网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

外贸网站建设