标签云
asm恢复 bbed bootstrap$ dul kcbzib_kcrsds_1 kccpb_sanity_check_2 kcratr_nab_less_than_odr MySQL恢复 obet ORA-00312 ORA-00704 ORA-00742 ORA-01110 ORA-01200 ORA-01555 ORA-01578 ORA-01595 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-600 kcratr_nab_less_than_odr ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 ORACLE恢复 Oracle 恢复 ORACLE数据库恢复 oracle碎片 OSD-04016 YOUR FILES ARE ENCRYPTED 比特币加密文章分类
- MongoDB (1)
- MongoDB恢复 (1)
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (112)
- 数据库 (1,884)
- DB2 (22)
- MySQL (82)
- Oracle (1,709)
- Data Guard (53)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (168)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (73)
- Oracle Bug (8)
- Oracle RAC (56)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (662)
- Oracle安装升级 (108)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (91)
- PostgreSQL (37)
- pdu工具 (7)
- PostgreSQL恢复 (13)
- SQL Server (34)
- SQL Server恢复 (14)
- TimesTen (7)
- 达梦数据库 (5)
- 达梦恢复 (3)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (51)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (34)
- MongoDB (1)
-
最近发表
- 记录19c ASM磁盘掉线触发ORA-59048故障处理
- aix平台Oracle数据库由于断电无法启动故障处理
- 断电引起ORA-600 3005故障处理
- 记录一次云存储资源到期之后引起的数据库恢复
- Firebird 损坏数据库数据抢救工具—firebirdext
- Oracle 19c 202610补丁(RUs+OJVM)-19.33
- 由于con$.con#值达到极限,触发数据库增加约束报ORA-600 12807错误
- MongoDB 离线提取工具—mongoext
- .bres勒索病毒加密数据库dmp文件可恢复
- ORA-600 krsm_mrp_rebuild_lf_list.lno_mismatch
- 记录一次0丢失的ORA-00354: 损坏重做日志块标头故障恢复
- 不当数据库恢复操作导致一个月数据丢失
- obet快速修复oracle 位图损坏块
- 不太常见的10.2.0.1的oracle redo损坏恢复
- obet forcecopy功能抢救硬件故障中的数据文件
- kcratr_nab_less_than_odr和system坏块故障处理
- 通过obet 恢复system坏块,打开数据库
- obet dbv功能完整说明
- 分享一例运行在aix上的sap系统数据库恢复过程
- OBET-Oracle Block Editor Tool使用说明
分类目录归档:数据库
ORA-00600[KSSADP1]
检查数据库发现ORA-00600[KSSADP1]错误
Thu Apr 19 21:16:45 2012 Errors in file /oracle9/app/admin/crm/udump/crm1_ora_442896.trc: ORA-00600: internal error code, arguments: [KSSADP1], [], [], [], [], [], [], [] Thu Apr 19 21:16:45 2012 Errors in file /oracle9/app/admin/crm/udump/crm1_ora_442896.trc: ORA-00600: internal error code, arguments: [KSSADP1], [], [], [], [], [], [], [] Thu Apr 19 21:16:45 2012 Trace dumping is performing id=[cdmp_20120419211645] Thu Apr 19 21:16:46 2012 Errors in file /oracle9/app/admin/crm/udump/crm1_ora_442896.trc: ORA-00600: internal error code, arguments: [KSSADP1], [], [], [], [], [], [], [] Thu Apr 19 21:16:47 2012 Errors in file /oracle9/app/admin/crm/udump/crm1_ora_442896.trc: ORA-00600: internal error code, arguments: [KSSADP1], [], [], [], [], [], [], []
分析crm1_ora_442896.trc信息
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options
JServer Release 9.2.0.8.0 - Production
ORACLE_HOME = /oracle9/app/product/9.2.0
System name: AIX
Node name: zwq_crm1
Release: 3
Version: 5
Machine: 00C420B44C00
Instance name: crm1
Redo thread mounted by this instance: 1
Oracle process number: 2354
Unix process pid: 442896, image: oracle@zwq_crm1 (TNS V1-V3)
*** SESSION ID:(927.39278) 2012-04-19 21:16:45.317
*** 2012-04-19 21:16:45.317
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [KSSADP1], [], [], [], [], [], [], []
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedmp+0148 bl ksedst 1029746FC ?
ksfdmp+0018 bl 01FD4014
kgerinv+00e8 bl _ptrgl
kgesinv+0020 bl kgerinv 9001000A02B56F8 ?
9001000A02B9450 ?
FFFFFFFFFFF8430 ? 000000458 ?
900000000CBAFA4 ?
ksesin+005c bl kgesinv FFFFFFFFFFF88E0 ? 1101FAF78 ?
900000000C0ECC0 ? 000010000 ?
000000002 ?
kssadpm_stage+00c4 bl ksesin 102973C84 ? 000000000 ?
00000001E ? 000000000 ?
000000069 ? 00000000C ?
000000000 ? 000000000 ?
ksqgel+0138 bl kssadpm_stage 000000000 ? 000000000 ?
000000000 ? 000000000 ?
kcftis+003c bl ksqgel 000000000 ? 4029C61E0 ?
000000002 ? 0FFFFC16C ?
102A7977C ? 000000000 ?
000000003 ? 002A36408 ?
kcfhis+001c bl kcftis
krbbcc+0238 bl kcfhis 11043B590 ?
krbpgc+001c bl krbbcc
ksmupg+0074 bl _ptrgl
ksuded+00b8 bl ksmupg 102924988 ? 000000020 ?
ksupucg+10ec bl ksuded 700000C376F5740 ? 000000000 ?
000000000 ?
opiodr+0474 bl ksupucg 100000001 ?
ttcpip+0cc4 bl _ptrgl
opitsk+0d60 bl ttcpip 11000CF90 ?
442442216B736800 ?
FFFFFFFFFFFBF00 ? 1102E04BC ?
1102D7D20 ? 0000006A0 ?
1102D83C0 ? 0000006A0 ?
opiino+0758 bl opitsk 000000000 ? 000000000 ?
opiodr+08cc bl _ptrgl
opidrv+032c bl opiodr 3C00000018 ? 4101FAF78 ?
FFFFFFFFFFFF840 ? 0A000F350 ?
sou2o+0028 bl opidrv 3C0C000000 ? 4A00E8B50 ?
FFFFFFFFFFFF840 ?
main+0138 bl 01FD3A28
__start+0098 bl main 000000000 ? 000000000 ?
--------------------- Binary Stack Dump ---------------------
Cursor Dump:
----------------------------------------
Cursor 1 (110360418): CURROW curiob: 110369b78
curflg: 46 curpar: 0 curusr: 0 curses 700000c376f5740
cursor name: select nvl(max(cpmid),0) from x$kcccp where cpsta = 2
child pin: 0, child lock: 700000d9b9c5bb8, parent lock: 700000d088e0fa0
xscflg: 1100024, parent handle: 70000031d588d88, xscfl2: 4040401
bhp size: 160/600
----------------------------------------
Cursor 2 (110360468): CURBOUND curiob: 1103656f0
curflg: c7 curpar: 0 curusr: 0 curses 700000c376f5740
cursor name: SELECT SUBSTR(VERSION,1,INSTR(VERSION,'.') - 1 ) FROM V$INSTANCE
child pin: 0, child lock: 700000d21e60930, parent lock: 700000327837ce0
xscflg: 141024, parent handle: 700000304e2f020, xscfl2: 4000401
bhp size: 160/600
----------------------------------------
Cursor 3 (1103604b8): CURBOUND curiob: 1103b6aa8
curflg: c7 curpar: 0 curusr: 0 curses 700000c376f5740
cursor name: SELECT SUBSTR(VERSION,1 + INSTR(VERSION,'.',1,1) ,INSTR(VERSION,'.',1,2) -
INSTR(VERSION,'.',1,1) - 1 ) FROM V$INSTANCE
child pin: 0, child lock: 700000d5e382ee8, parent lock: 700000c93581d40
xscflg: 141024, parent handle: 700000d73daa1c0, xscfl2: 4000401
bhp size: 160/600
----------------------------------------
Cursor 4 (110360508): CURBOUND curiob: 1103b66b8
curflg: c7 curpar: 0 curusr: 0 curses 700000c376f5740
cursor name: SELECT SUBSTR(VERSION,1 + INSTR(VERSION,'.',1,2) ,INSTR(VERSION,'.',1,3) -
INSTR(VERSION,'.',1,2) - 1 ) FROM V$INSTANCE
child pin: 0, child lock: 700000d16de7978, parent lock: 700000c44059d30
xscflg: 141024, parent handle: 700000259c4a700, xscfl2: 4000401
bhp size: 160/600
----------------------------------------
Cursor 5 (110360558): CURBOUND curiob: 1103b3868
curflg: 46 curpar: 0 curusr: 0 curses 700000c376f5740
cursor name: SELECT SYSDATE FROM SYS.DUAL
child pin: 0, child lock: 700000d589cea48, parent lock: 70000026b311fb0
xscflg: 100024, parent handle: 700000d2eaee328, xscfl2: 4600409
bhp size: 280/632
----------------------------------------
Cursor 6 (1103605a8): CURBOUND curiob: 1103b3408
curflg: 46 curpar: 0 curusr: 0 curses 700000c376f5740
cursor name: SELECT TO_CHAR(SYSDATE,'YYYY','NLS_CALENDAR=Gregorian'),TO_CHAR(SYSDATE,'MM','NLS_CALENDAR=Gregorian'),
TO_CHAR(SYSDATE,'DD','NLS_CALENDAR=Gregorian') FROM X$DUAL
child pin: 0, child lock: 70000033f1753c8, parent lock: 700000db8c6dd18
xscflg: 100024, parent handle: 700000cbc6ad8b0, xscfl2: 4600409
bhp size: 160/600
End of cursor dump
ksedmp: no current context area
----- Dump of the Fixed PGA -----
找到相关文档Note:262996.1,经过分析,产生错误的原因是由在本版本的数据库中SGA管理中存在的漏洞造成,但此错误没有对数据库的数据造成损坏及性能影响.
处理建议
1.当前版本ORACLE已经不再提供补丁支持,建议升级到高版本解决(有sr中介绍10.2中解决);
2.由于此报错并没有对数据库的数据及性能造成损坏及影响,可以忽此错误。
记录一次ARC1: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned解决
Data Guard主库出现如下错误
导致归档日志不同通过LOG_ARCHIVE_DEST_2传输到备库
Thu Apr 19 19:58:40 2012 Errors in file /u01/app/oracle/admin/orcl/udump/orcl_ora_6756.trc: Thu Apr 19 19:58:40 2012 Errors in file /u01/app/oracle/admin/orcl/udump/orcl_ora_6756.trc: Thu Apr 19 19:58:40 2012 Errors in file /u01/app/oracle/admin/orcl/udump/orcl_ora_6756.trc: Thu Apr 19 20:00:26 2012 ARC1: Attempting destination LOG_ARCHIVE_DEST_2 network reconnect (3113) ARC1: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned PING[ARC1]: Error 3113 when pinging standby standby. Thu Apr 19 20:18:18 2012 Errors in file /u01/app/oracle/admin/orcl/udump/orcl_ora_6756.trc: Thu Apr 19 20:18:18 2012 Errors in file /u01/app/oracle/admin/orcl/udump/orcl_ora_6756.trc: Thu Apr 19 20:18:18 2012 Errors in file /u01/app/oracle/admin/orcl/udump/orcl_ora_6756.trc: Thu Apr 19 20:33:27 2012 ARC1: Attempting destination LOG_ARCHIVE_DEST_2 network reconnect (3113) ARC1: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned [oracle@localhost ~]$ oerr ora 3113 03113, 00000, "end-of-file on communication channel" // *Cause: The connection between Client and Server process was broken. // *Action: There was a communication error that requires further investigation. // First, check for network problems and review the SQL*Net setup. // Also, look in the alert.log file for any errors. Finally, test to // see whether the server process is dead and whether a trace file // was generated at failure time. 提示连接错误
orcl_ora_6756.trc文件内容
这里没有得任何重要的有效信息
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production With the Partitioning, OLAP and Data Mining options ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1 System name: Linux Node name: fcdb1 Release: 2.6.18-194.el5 Version: #1 SMP Fri Apr 2 14:58:14 EDT 2010 Machine: x86_64 Instance name: orcl Redo thread mounted by this instance: 1 Oracle process number: 21 Unix process pid: 6756, image: oracle@fcdb1 (TNS V1-V3) *** 2012-04-19 19:51:32.033 *** ACTION NAME:(0000045 STARTED16) 2012-04-19 19:51:32.026 *** MODULE NAME:(backup incr datafile) 2012-04-19 19:51:32.026 *** SERVICE NAME:(SYS$USERS) 2012-04-19 19:51:32.026 *** SESSION ID:(1518.294) 2012-04-19 19:51:32.026 *** ACTION NAME:(0000062 STARTED68) 2012-04-19 19:58:40.083 *** MODULE NAME:(backup full datafile) 2012-04-19 19:58:40.083 *** 2012-04-19 19:58:40.083 *** ACTION NAME:(0000068 STARTED16) 2012-04-19 19:58:40.156 *** 2012-04-19 20:18:18.436 *** ACTION NAME:(0000118 STARTED16) 2012-04-19 20:18:18.436 *** MODULE NAME:(backup incr datafile) 2012-04-19 20:18:18.436
查看相关参数
SQL> show parameter archive;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_config string DG_CONFIG=(primary,standby)
log_archive_dest_1 string LOCATION=/u01/app/oracle/arch
VALID_FOR=(ALL_LOGFILES,ALL_RO
LES) DB_UNIQUE_NAME=primary
log_archive_dest_2 string SERVICE=standby LGWR ASYNC VAL
ID_FOR=(ONLINE_LOGFILES,PRIMAR
Y_ROLE) DB_UNIQUE_NAME=standby
log_archive_dest_state_1 string ENABLE
log_archive_dest_state_2 string ENABLE
测试TNS
[oracle@fcdb1 bdump]$ tnsping standby TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 19-APR-2012 20:47:51 Copyright (c) 1997, 2005, Oracle. All rights reserved. Used parameter files: Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.203)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl))) OK (0 msec) [oracle@fcdb1 bdump]$ sqlplus sys/oracle@standby as sysdba SQL*Plus: Release 10.2.0.1.0 - Production on Thu Apr 19 20:49:05 2012 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production With the Partitioning, OLAP and Data Mining options
问题原因分析
从log_archive_dest_2 参数上可以看出默认是配置lgwr进程传输日志,但是因为备库没有配置standby redo log,所以使得启动arch传输日志,然后出现该问题,因为在传输过程中出现异常,导致arch不能继续和备库建立连接。
解决方法
查看了很多资料,给出的解决方法都是重启主库或者备库解决,我想既然是ARCH建立连接的失败,那么重启log_archive_dest_state_2参数,让arch进程重启。
SQL> ALTER SYSTEM SET log_archive_dest_state_2='DEFER' SCOPE=BOTH; System altered. SQL> ALTER SYSTEM SET log_archive_dest_state_2='ENABLE' SCOPE=BOTH; System altered. SQL> alter system switch logfile; System altered. --alert日志 Thu Apr 19 20:51:12 2012 ALTER SYSTEM SET log_archive_dest_state_2='DEFER' SCOPE=BOTH; Thu Apr 19 20:51:32 2012 ALTER SYSTEM SET log_archive_dest_state_2='ENABLE' SCOPE=BOTH; LNS1 started with pid=35, OS id=7012 Thu Apr 19 20:51:47 2012 Thread 1 advanced to log sequence 2025 Current log# 2 seq# 2025 mem# 0: /u01/app/oracle/oradata/orcl/redo02.log Thu Apr 19 20:51:48 2012 ****************************************************************** LGWR: Setting 'active' archival for destination LOG_ARCHIVE_DEST_2 ****************************************************************** Thu Apr 19 20:52:02 2012 Thread 1 advanced to log sequence 2026 Current log# 3 seq# 2026 mem# 0: /u01/app/oracle/oradata/orcl/redo03.log Thread 1 cannot allocate new log, sequence 2027
这个时候,查看备库日志也已经传输过去,通过修改log_archive_dest_state_2解决
ARC1: Attempting destination LOG_ARCHIVE_DEST_2 network reconnect (3113) ARC1: Destination LOG_ARCHIVE_DEST_2 network reconnect abandoned
发表在 Oracle
评论关闭
利用scn增量备份实现数据库增量恢复
数据库版本
SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production PL/SQL Release 11.2.0.3.0 - Production CORE 11.2.0.3.0 Production TNS for Linux: Version 11.2.0.3.0 - Production NLSRTL Version 11.2.0.3.0 - Production
全备数据库
RMAN> backup as compressed backupset database format '/u01/oracle/oradata/tmp/ora11g_0_%U'; Starting backup at 18-APR-12 using channel ORA_DISK_1 channel ORA_DISK_1: starting compressed full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00001 name=/u01/oracle/oradata/ora11g/system01.dbf input datafile file number=00002 name=/u01/oracle/oradata/ora11g/sysaux01.dbf input datafile file number=00003 name=/u01/oracle/oradata/ora11g/undotbs01.dbf input datafile file number=00004 name=/u01/oracle/oradata/ora11g/users01.dbf input datafile file number=00006 name=/u01/oracle/oradata/ora11g/xifenfei02.dbf channel ORA_DISK_1: starting piece 1 at 18-APR-12 channel ORA_DISK_1: finished piece 1 at 18-APR-12 piece handle=/u01/oracle/oradata/tmp/ora11g_0_07n8p916_1_1 tag=TAG20120418T234958 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:01:15 channel ORA_DISK_1: starting compressed full 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 18-APR-12 channel ORA_DISK_1: finished piece 1 at 18-APR-12 piece handle=/u01/oracle/oradata/tmp/ora11g_0_08n8p93h_1_1 tag=TAG20120418T234958 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 18-APR-12
创建测试数据库验证恢复标准
SQL> conn chf/xifenfei
Connected.
SQL> drop table xifenfei purge;
Table dropped.
SQL> create table xifenfei as
2 select * from dba_objects;
Table created.
SQL> insert into xifenfei
2 select * from dba_objects;
74534 rows created.
SQL> /
74534 rows created.
SQL> /
74534 rows created.
SQL> commit;
Commit complete.
SQL> select count(*) from xifenfei;
COUNT(*)
----------
298136
SQL> create table xifenfei01 as
2 select * from dba_objects;
Table created.
SQL> alter system switch logfile;
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> /
System altered.
SQL> create table chf.xifenfei02 as
2 select * from dba_objects;
Table created.
SQL> alter system switch logfile;
System altered.
异机恢复库
RMAN> restore controlfile from '/u01/oracle/oradata/tmp/ora11g_0_08n8p93h_1_1';
Starting restore at 19-APR-12
using channel ORA_DISK_1
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/oracle/oradata/ora11g/control01.ctl
output file name=/u01/oracle/oradata/ora11g/control02.ctl
Finished restore at 19-APR-12
RMAN> alter database mount;
database mounted
released channel: ORA_DISK_1
RMAN> list backup;
List of Backup Sets
===================
BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
7 Full 262.79M DISK 00:01:08 18-APR-12
BP Key: 7 Status: AVAILABLE Compressed: YES Tag: TAG20120418T234958
Piece Name: /u01/oracle/oradata/tmp/ora11g_0_07n8p916_1_1
List of Datafiles in backup set 7
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 1155510 18-APR-12 /u01/oracle/oradata/ora11g/system01.dbf
2 Full 1155510 18-APR-12 /u01/oracle/oradata/ora11g/sysaux01.dbf
3 Full 1155510 18-APR-12 /u01/oracle/oradata/ora11g/undotbs01.dbf
4 Full 1155510 18-APR-12 /u01/oracle/oradata/ora11g/users01.dbf
6 Full 1155510 18-APR-12 /u01/oracle/oradata/ora11g/xifenfei02.dbf
--这里可以发现备份时的scn,增量备份时取这里的最小scn为起点
--为了排除影响,删除所有归档日志记录
RMAN> delete archivelog all;
RMAN> list archivelog all;
specification does not match any archived log in the repository
RMAN> restore database;
Starting restore at 19-APR-12
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/oracle/oradata/ora11g/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /u01/oracle/oradata/ora11g/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u01/oracle/oradata/ora11g/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u01/oracle/oradata/ora11g/users01.dbf
channel ORA_DISK_1: restoring datafile 00006 to /u01/oracle/oradata/ora11g/xifenfei02.dbf
channel ORA_DISK_1: reading from backup piece /u01/oracle/oradata/tmp/ora11g_0_07n8p916_1_1
channel ORA_DISK_1: piece handle=/u01/oracle/oradata/tmp/ora11g_0_07n8p916_1_1 tag=TAG20120418T234958
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:01:36
Finished restore at 19-APR-12
[oracle@xifenfei oradata]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Thu Apr 19 00:54:42 2012
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> select file#,to_char(checkpoint_change#,'9999999999999999') "SCN",
2 to_char(RESETLOGS_CHANGE#,'9999999999999999') "RESETLOGS SCN"
3 from v$datafile_header;
FILE# SCN RESETLOGS SCN
---------- ---------------------------------- ----------------------------------
1 1155510 787897
2 1155510 787897
3 1155510 787897
4 1155510 787897
6 1155510 787897
SQL> select file#,to_char(checkpoint_change#,'999999999999999') "SCN",
2 to_char(last_change#,'999999999999999')"STOP_SCN" from v$datafile;
FILE# SCN STOP_SCN
---------- -------------------------------- --------------------------------
1 1155510
2 1155510
3 1155510
4 1155510
6 1155510
基于scn增量备份
RMAN> BACKUP INCREMENTAL FROM SCN 1155510 DATABASE 2> FORMAT '/u01/oracle/oradata/tmp/ora11_scn_%U' tag 'XIFENFEI'; Starting backup at 19-APR-12 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=125 device type=DISK backup will be obsolete on date 26-APR-12 archived logs will not be kept or backed up 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/ora11g/system01.dbf input datafile file number=00002 name=/u01/oracle/oradata/ora11g/sysaux01.dbf input datafile file number=00003 name=/u01/oracle/oradata/ora11g/undotbs01.dbf input datafile file number=00004 name=/u01/oracle/oradata/ora11g/users01.dbf input datafile file number=00006 name=/u01/oracle/oradata/ora11g/xifenfei02.dbf channel ORA_DISK_1: starting piece 1 at 19-APR-12 channel ORA_DISK_1: finished piece 1 at 19-APR-12 piece handle=/u01/oracle/oradata/tmp/ora11_scn_0bn8pbsd_1_1 tag=XIFENFEI comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:45 using channel ORA_DISK_1 backup will be obsolete on date 26-APR-12 archived logs will not be kept or backed up 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 19-APR-12 channel ORA_DISK_1: finished piece 1 at 19-APR-12 piece handle=/u01/oracle/oradata/tmp/ora11_scn_0cn8pbtq_1_1 tag=XIFENFEI comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01 Finished backup at 19-APR-12
增量恢复
RMAN> catalog start with '/u01/oracle/oradata/tmp/ora11_scn_09n8pa5h_1_1';
searching for all files that match the pattern /u01/oracle/oradata/tmp/ora11_scn_09n8pa5h_1_1
List of Files Unknown to the Database
=====================================
File Name: /u01/oracle/oradata/tmp/ora11_scn_09n8pa5h_1_1
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/oracle/oradata/tmp/ora11_scn_09n8pa5h_1_1
RMAN> recover database;
Starting recover at 19-APR-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=125 device type=DISK
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/ora11g/system01.dbf
destination for restore of datafile 00002: /u01/oracle/oradata/ora11g/sysaux01.dbf
destination for restore of datafile 00003: /u01/oracle/oradata/ora11g/undotbs01.dbf
destination for restore of datafile 00004: /u01/oracle/oradata/ora11g/users01.dbf
destination for restore of datafile 00006: /u01/oracle/oradata/ora11g/xifenfei02.dbf
channel ORA_DISK_1: reading from backup piece /u01/oracle/oradata/tmp/ora11_scn_0bn8pbsd_1_1
channel ORA_DISK_1: piece handle=/u01/oracle/oradata/tmp/ora11_scn_0bn8pbsd_1_1.bak tag=XIFENFEI
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:07
starting media recovery
--这里表现出来的是利用归档日志恢复,实质是基于scn增量备份的备份集恢复
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_49_777766629.dbf thread=1 sequence=49
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_50_777766629.dbf thread=1 sequence=50
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_51_777766629.dbf thread=1 sequence=51
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_52_777766629.dbf thread=1 sequence=52
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_53_777766629.dbf thread=1 sequence=53
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_54_777766629.dbf thread=1 sequence=54
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_55_777766629.dbf thread=1 sequence=55
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_56_777766629.dbf thread=1 sequence=56
archived log file name=/u01/oracle/oradata/archivelog/ora11g/1_57_777766629.dbf thread=1 sequence=57
unable to find archived log
archived log thread=1 sequence=58
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 04/19/2012 00:55:48
RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 58 and starting SCN of 1157379
SQL> select file#,to_char(checkpoint_change#,'9999999999999999') "SCN",
2 to_char(RESETLOGS_CHANGE#,'9999999999999999') "RESETLOGS SCN"
3 from v$datafile_header;
FILE# SCN RESETLOGS SCN
---------- ---------------------------------- ----------------------------------
1 1157379 787897
2 1157379 787897
3 1157379 787897
4 1157379 787897
6 1157379 787897
SQL> select file#,to_char(checkpoint_change#,'999999999999999') "SCN",
2 to_char(last_change#,'999999999999999')"STOP_SCN" from v$datafile;
FILE# SCN STOP_SCN
---------- -------------------------------- --------------------------------
1 1157379
2 1157379
3 1157379
4 1157379
6 1157379
SQL> alter database open resetlogs;
Database altered.
SQL> select count(*) from chf.xifenfei;
COUNT(*)
----------
298136
SQL> select TABLE_NAME from dba_tables where table_name LIKE 'XIFENFEI%';
TABLE_NAME
------------------------------------------------------------
XIFENFEI02
XIFENFEI01
XIFENFEI
使用rman基于scn实现数据库增量恢复是在dg中修复gap的时候常见的方法,其实该方法也可以使用常规的增量恢复,通过人工控制,实现数据库的某种特殊的业务需求(特殊的数据迁移).处理思路主要是获得备库的数据文件最小scn(这个scn可能是通过全备恢复或者增量恢复产生),然后基于该SCN实现数据库增量备份,然后利用该备份进行增量恢复.

加我微信(17813235971)
加我QQ(107644445)

