风哥教程

培训 . 交流 . 分享
Make progress together!

DataGuard主库归档文件丢失,备库不需重建实验

[复制链接]
内容发布:luashin| 发布时间:2020-5-16 10:59:14
DataGuard主库归档文件丢失,备库不需重建实验
1)模拟环境,修改主库参数,延迟归档传输到备库
SQL> alter system set log_archive_dest_state_2=defer;
System altered.
2)在主库进行一些DML操作
SQL> create table neal as select * from dba_objects;
Table created.
SQL> delete from neal where rownum<1000;
999 rows deleted.
SQL> commit;
Commit complete.
3)切换日志,产生归档
SQL> alter system switch logfile;
System altered.
SQL> alter system switch logfile;
System altered.
4)查询归档日志应用情况
SQL> select SEQUENCE#,APPLIED from v$archived_log order by SEQUENCE# asc;
SEQUENCE# APPLIED
---------- ---------
839 NO
839 YES
840 NO
840 YES
841 NO
841 YES
842 NO
843 NO
5)将未传到备库的归档文件mv或rm掉
[oracle@primary orcl]$ mv -v 1_842_899802738.arc 1_842_899802738.arc.bak
[oracle@primary orcl]$ mv -v 1_843_899802738.arc 1_843_899802738.arc.bak
[oracle@primary orcl]$ ll -lrth
-rw-r----- 1 oracle oinstall 6.5K Mar 24 14:10 1_842_899802738.arc.bak
-rw-r----- 1 oracle oinstall 11M Mar 24 14:18 1_843_899802738.arc.bak
6)查询目前备库的scn
SQL> select current_scn from v$database;
CURRENT_SCN
-----------
2356278
7)停止备库的应用功能
SQL> alter database recover standby database cancel;
8)将主库延迟归档传输功能恢复
SQL> alter system set log_archive_dest_state_2=enable;
System altered.
9)主库进行基于scn的增量备份
[oracle@primary orcl]$ rman target /
Recovery Manager: Release 11.2.0.4.0 - Production on Thu Mar 24 14:24:52 2016
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: ORCL (DBID=1427583471)
RMAN> backup incremental from scn 2356278 database format='/u01/backup/forstandby_%u' tag=forstandby;
Starting backup at 24-MAR-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=46 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/oracle/oradata/orcl/system01.dbf
input datafile file number=00002 name=/u01/oracle/oradata/orcl/sysaux01.dbf
input datafile file number=00003 name=/u01/oracle/oradata/orcl/undotbs01.dbf
input datafile file number=00005 name=/u01/oracle/oradata/orcl/qxt01.dbf
input datafile file number=00006 name=/u01/sun01.dbf
input datafile file number=00004 name=/u01/oracle/oradata/orcl/users01.dbf
channel ORA_DISK_1: starting piece 1 at 24-MAR-16
channel ORA_DISK_1: finished piece 1 at 24-MAR-16
piece handle=/u01/backup/forstandby_05r19oki tag=FORSTANDBY comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:35
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
channel ORA_DISK_1: starting piece 1 at 24-MAR-16
channel ORA_DISK_1: finished piece 1 at 24-MAR-16
piece handle=/u01/backup/forstandby_06r19olm tag=FORSTANDBY comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 24-MAR-16
10)传送增量文件到备库
[oracle@primary backup]$ scp -v forstandby_0* oracle@192.168.8.71:/u01/backup/
oracle@192.168.8.71's password:
forstandby_05r19oki 100% 10MB 10.2MB/s 00:01
forstandby_06r19olm 100% 13MB 12.5MB/s 00:00
11) 备库查询传输过来的文件
[oracle@standby backup]$ ll -lrt
total 1134124
-rw-r----- 1 oracle oinstall 1127710720 Dec 30 09:02 backup_899803644_1_1.bak
-rw-r----- 1 oracle oinstall 9830400 Dec 30 09:03 backup_899803700_2_1.bak
-rw-r----- 1 oracle oinstall 10657792 Mar 24 14:28 forstandby_05r19oki
-rw-r----- 1 oracle oinstall 13139968 Mar 24 14:29 forstandby_06r19olm
12)查询备库schema信息
RMAN> report schema;
using target database control file instead of recovery catalog
RMAN-06139: WARNING: control file is not current for REPORT SCHEMA
Report of database schema for database with db_unique_name DG
List of Permanent Datafiles
===========================
File Size(MB) Tablespace RB segs Datafile Name
---- -------- -------------------- ------- ------------------------
1 760 SYSTEM *** /u01/oracle/oradata/dg/system01.dbf
2 620 SYSAUX *** /u01/oracle/oradata/dg/sysaux01.dbf
3 70 UNDOTBS1 *** /u01/oracle/oradata/dg/undotbs01.dbf
4 5 USERS *** /u01/oracle/oradata/dg/users01.dbf
5 50 QXT *** /u01/oracle/oradata/dg/qxt01.dbf
6 10 SUN *** /u01/sun01.dbf
List of Temporary Files
=======================
File  Size(MB)  Tablespace  Maxsize(MB)  Tempfile Name
----  --------  ----------  -----------  ----------------------------------
1     20        TEMP        32767        /u01/oracle/oradata/dg/temp01.dbf
13) 备库启动到nomount阶段
RMAN> startup nomount;
Oracle instance started
Total System Global Area 784998400 bytes
Fixed Size 2257352 bytes
Variable Size 499125816 bytes
Database Buffers 281018368 bytes
Redo Buffers 2596864 bytes
14) 从备份片里恢复standby控制文件
RMAN> restore standby controlfile from '/u01/backup/forstandby_06r19olm';
Starting restore at 24-MAR-16
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/oracle/oradata/dg/control01.ctl
output file name=/u01/oracle/fast_recovery_area/dg/control02.ctl
Finished restore at 24-MAR-16
15) 备库启动到mount阶段,并注册备份集
RMAN> alter database mount;
database mounted
released channel: ORA_DISK_1
RMAN> catalog start with '/u01/backup/';
searching for all files that match the pattern /u01/backup/
List of Files Unknown to the Database
=====================================
File Name: /u01/backup/forstandby_06r19olm
File Name: /u01/backup/forstandby_05r19oki
Do you really want to catalog the above files (enter YES or NO)? yes
cataloging files...
cataloging done
List of Cataloged Files
=======================
File Name: /u01/backup/forstandby_06r19olm
File Name: /u01/backup/forstandby_05r19oki
RMAN> list backup;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
1 Full 1.05G DISK 00:00:52 30-DEC-15
BP Key: 1 Status: AVAILABLE Compressed: NO Tag: TAG20151230T092724
Piece Name: /u01/backup/backup_899803644_1_1.bak
List of Datafiles in backup set 1
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 964412 30-DEC-15 /u01/oracle/oradata/dg/system01.dbf
2 Full 964412 30-DEC-15 /u01/oracle/oradata/dg/sysaux01.dbf
3 Full 964412 30-DEC-15 /u01/oracle/oradata/dg/undotbs01.dbf
4 Full 964412 30-DEC-15 /u01/oracle/oradata/dg/users01.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
2 Full 9.36M DISK 00:00:07 30-DEC-15
BP Key: 2 Status: AVAILABLE Compressed: NO Tag: TAG20151230T092724
Piece Name: /u01/backup/backup_899803700_2_1.bak
SPFILE Included: Modification time: 30-DEC-15
SPFILE db_unique_name: ORCL
Control File Included: Ckp SCN: 964412 Ckp time: 30-DEC-15
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
3 Incr 12.52M DISK 00:00:00 24-MAR-16
BP Key: 3 Status: AVAILABLE Compressed: NO Tag: FORSTANDBY
Piece Name: /u01/backup/forstandby_06r19olm
Control File Included: Ckp SCN: 2357421 Ckp time: 24-MAR-16
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
4 Incr 10.16M DISK 00:00:00 24-MAR-16
BP Key: 4 Status: AVAILABLE Compressed: NO Tag: FORSTANDBY
Piece Name: /u01/backup/forstandby_05r19oki
List of Datafiles in backup set 4
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Incr 2357390 24-MAR-16 /u01/oracle/oradata/dg/system01.dbf
2 Incr 2357390 24-MAR-16 /u01/oracle/oradata/dg/sysaux01.dbf
3 Incr 2357390 24-MAR-16 /u01/oracle/oradata/dg/undotbs01.dbf
4 Incr 2357390 24-MAR-16 /u01/oracle/oradata/dg/users01.dbf
5 Incr 2357390 24-MAR-16 /u01/oracle/oradata/dg/qxt01.dbf
6 Incr 2357390 24-MAR-16 /u01/sun01.dbf
16) 使用如下语句恢复
RMAN> recover database noredo;
Starting recover at 24-MAR-16
using channel ORA_DISK_1
channel ORA_DISK_1: starting incremental datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
destination for restore of datafile 00001: /u01/oracle/oradata/dg/system01.dbf
destination for restore of datafile 00002: /u01/oracle/oradata/dg/sysaux01.dbf
destination for restore of datafile 00003: /u01/oracle/oradata/dg/undotbs01.dbf
destination for restore of datafile 00004: /u01/oracle/oradata/dg/users01.dbf
destination for restore of datafile 00005: /u01/oracle/oradata/dg/qxt01.dbf
destination for restore of datafile 00006: /u01/sun01.dbf
channel ORA_DISK_1: reading from backup piece /u01/backup/forstandby_05r19oki
channel ORA_DISK_1: piece handle=/u01/backup/forstandby_05r19oki tag=FORSTANDBY
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
Finished recover at 24-MAR-16



上一篇:RHEL 7.2部署Oracle 12c RAC
下一篇:MySQL 8.0数据库安装实践
回复

使用道具 举报

1框架
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门文章教程

  • PostgreSQL数据库中文培训手册
  • Oracle Database 12c 数据库100个新特性与
  • Navicat for MySQL最新版下载地址及注册码
  • oracle 12c RAC 日志频繁切换 checkpoint n
  • 风哥Oracle数据库巡检工具V1.0(附2.6网页
  • MySQL权威指南(第2版)PDF电子书下载
快速回复 返回顶部 返回列表