标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-00742 ORA-01110 ORA-01555 ORA-01578 ORA-01595 ORA-08103 ORA-600 2131 ORA-600 2662 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-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 勒索恢复 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (103)
- 数据库 (1,756)
- DB2 (22)
- MySQL (76)
- Oracle (1,598)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (163)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (69)
- Oracle Bug (8)
- Oracle RAC (54)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (28)
- Oracle备份恢复 (588)
- Oracle安装升级 (96)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (84)
- PostgreSQL (30)
- pdu工具 (6)
- PostgreSQL恢复 (9)
- SQL Server (32)
- SQL Server恢复 (13)
- TimesTen (7)
- 达梦数据库 (3)
- 达梦恢复 (1)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (39)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (22)
-
最近发表
- Oracle Recovery Tools恢复案例总结—202505
- ORA-600 kddummy_blkchk 数据库循环重启
- 记录一次asm disk加入到vg通过恢复直接open库的案例
- CHECKDB 发现了 N 个分配错误和 M 个一致性错误
- 达梦数据库dm.ctl文件异常恢复
- Oracle Recovery Tools修复ORA-00742、ORA-600 ktbair2: illegal inheritance故障
- 可能是 tempdb 空间用尽或某个系统表不一致故障处理
- 11.2.0.4库中遇到ORA-600 kcratr_nab_less_than_odr报错
- [MY-013183] [InnoDB] Assertion failure故障处理
- Oracle 19c 202504补丁(RUs+OJVM)-19.27
- Oracle Recovery Tools修复ORA-600 6101/kdxlin:psno out of range故障
- pdu完美支持金仓数据库恢复(KingbaseES)
- 虚拟机故障引起ORA-00310 ORA-00334故障处理
- pg创建gbk字符集库
- PostgreSQL运行日志管理
- ora-600 kdsgrp1 错误描述
- GAM、SGAM 或 PFS 页上存在页错误处理
- ORA-600 krhpfh_03-1208
- VMware勒索加密恢复(vmdk勒索恢复)
- ORA-39773: parse of metadata stream failed故障处理
分类目录归档:ORA-xxxxx
ORA-21779错误处理
有客户win 10.2.0.4的rac,查看alert日志发现如下错误
Mon May 04 17:25:18 2020 Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl2_smon_2548.trc: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1 Mon May 04 17:25:28 2020 Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl2_smon_2548.trc: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1 Mon May 04 17:25:38 2020 Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl2_smon_2548.trc: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1 Mon May 04 17:25:39 2020 Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl2_smon_2548.trc: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1
查看对应trace
Dump file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl2_smon_2548.trc Sat Aug 31 15:02:39 2019 ORACLE V10.2.0.4.0 - 64bit Production vsnsta=0 vsnsql=14 vsnxtr=3 Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production With the Partitioning, Real Application Clusters, OLAP, Data Mining and Real Application Testing options Windows Server 2003 Version V5.2 Service Pack 2 CPU : 32 - type 8664, 2 Physical Cores Process Affinity : 0x0000000000000000 Memory (Avail/Total): Ph:17543M/32742M, Ph+PgF:19550M/33833M ………… *** 2020-05-04 18:40:35.687 SMON: following errors trapped and ignored: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1 *** 2020-05-04 18:40:45.734 Drop transient type: SYSTPzpEA6olJSImGURLObkiE6w== *** 2020-05-04 18:40:45.734 SMON: following errors trapped and ignored: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1 *** 2020-05-04 18:40:55.812 Drop transient type: SYSTPzpEA6olJSImGURLObkiE6w== *** 2020-05-04 18:40:55.812 SMON: following errors trapped and ignored: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1 *** 2020-05-04 18:41:05.875 Drop transient type: SYSTPzpEA6olJSImGURLObkiE6w== *** 2020-05-04 18:41:05.875 SMON: following errors trapped and ignored: ORA-21779: 持续时间不活动 ORA-06512: 在 line 1
出现该问题是由于oracle的smon进程无法清理掉 transient types,从而出现该问题,根据官方的说法,这个错误是不会影响数据库正常使用,但是可以通过以下方法暂时规避这种错误:
1)通过设置alter system set events ’22834 trace name context forever, level 1′禁止smon清理transient types,从而来规避该错误,但是可能会引起transient types对象越来越多,当然你可以通过以下sql查询出来
select o.* from obj$ o, type$ t where o.oid$ = t.tvoid and bitand(t.properties,8388608) = 8388608 and (sysdate-o.ctime) > 0.0007;
然后删除掉相关记录DROP TYPE “SYSTPf/r2wN4keX7gQKjA3AFMSw==” FORCE;【这个删除不是必须的】
2) flush shared_pool也可以临时规避这个问题
3) 重启数据库,可以暂时规避
具体参考:
SMON: Following Errors Trapped And Ignored ORA-21779 (Doc ID 988663.1)
Receiving ORA-21780 Continuously in the Alert Log and SMON Trace Reports “Drop transient type”. (Doc ID 1081950.1)
Oracle数据库O/S-Error: (OS 1453)错误
客户数据库在运行过程中突然报错
Fri Apr 03 15:00:17 2020 Thread 1 cannot allocate new log, sequence 8201 Private strand flush not complete Current log# 1 seq# 8200 mem# 0: D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG Thread 1 advanced to log sequence 8201 (LGWR switch) Current log# 2 seq# 8201 mem# 0: D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG Fri Apr 03 20:25:06 2020 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ckpt_2292.trc: ORA-00202: control file: 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL01.CTL' ORA-27070: async read/write failed OSD-04006: ReadFile() 失败, 无法读取文件 O/S-Error: (OS 1453) 配额不足,无法完成请求的服务。 Fri Apr 03 20:27:32 2020 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_m000_3754676.trc: ORA-00202: control file: 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL01.CTL' ORA-27070: async read/write failed OSD-04006: ReadFile() 失败, 无法读取文件 O/S-Error: (OS 1453) 配额不足,无法完成请求的服务。 Fri Apr 03 20:28:42 2020 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ckpt_2292.trc: ORA-00206: error in writing (block 3, # blocks 1) of control file ORA-00202: control file: 'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\CONTROL02.CTL' ORA-27072: File I/O error OSD-04008: WriteFile() 失败, 无法写入文件 O/S-Error: (OS 1453) 配额不足,无法完成请求的服务。 ORA-00206: error in writing (block 3, # blocks 1) of control file ORA-00202: control file: 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL01.CTL' ORA-27072: File I/O error OSD-04008: WriteFile() 失败, 无法写入文件 O/S-Error: (OS 1453) 配额不足,无法完成请求的服务。 Errors in file d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ckpt_2292.trc: ORA-00221: error on write to control file ORA-00206: error in writing (block 3, # blocks 1) of control file ORA-00202: control file: 'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\CONTROL02.CTL' ORA-27072: File I/O error OSD-04008: WriteFile() 失败, 无法写入文件 O/S-Error: (OS 1453) 配额不足,无法完成请求的服务。 ORA-00206: error in writing (block 3, # blocks 1) of control file ORA-00202: control file: 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\CONTROL01.CTL' ORA-27072: File I/O error OSD-04008: WriteFile() 失败, 无法写入文件 O/S-Error: (OS 1453) 配额不足,无法完成请求的服务。 CKPT (ospid: 2292): terminating the instance due to error 221 Fri Apr 03 20:28:42 2020 opiodr aborting process unknown ospid (3753944) as a result of ORA-1092
这个错误提示io error,但是有O/S-Error: (OS 1453)的错误,根据经验判断很可能不是真的io错误,查询mos发现相关记录,发现在How To Resolve (OS 1453) Insufficient Quota To Complete The Requested Service Errors (Doc ID 758595.1)文章中有类似描述.
是由于oracle请求的过程中发现该应用可以使用的物理内存不足导致.该数据库恰好是32位的,最简单的做法就是换64位数据库,可以大大的避免这种错误发生
SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production PL/SQL Release 11.2.0.1.0 - Production CORE 11.2.0.1.0 Production TNS for 32-bit Windows: Version 11.2.0.1.0 - Production NLSRTL Version 11.2.0.1.0 - Production
ORA-04020导致adg异常
今日早上有客户反馈adg停止同步了,通过检查alert日志发现
Tue Dec 24 18:17:41 2019 Media Recovery Waiting for thread 1 sequence 56655 (in transit) Recovery of Online Redo Log: Thread 1 Group 11 Seq 56655 Reading mem 0 Mem# 0: Y:\ORACLE\ORADATA\ORACLE11\STD_REDO11.LOG Archived Log entry 56248 added for thread 1 sequence 56654 ID 0x5b6bcf9b dest 1: Tue Dec 24 18:18:11 2019 Errors in file C:\APP\ADMINISTRATOR\diag\rdbms\oracle11dg\oracle11\trace\oracle11_lgwr_3252.trc: ORA-04020: deadlock detected while trying to lock object SYS.orcl LGWR (ospid: 3252): terminating the instance due to error 4020 Tue Dec 24 18:18:11 2019 System state dump requested by (instance=1, osid=3252 (LGWR)), summary=[abnormal instance termination]. System State dumped to trace file C:\APP\ADMINISTRATOR\diag\rdbms\oracle11dg\trace\oracle11_diag_3236_20191224181811.trc Dumping diagnostic data in directory=[cdmp_20191224181811], requested by (instance=1, osid=3252 (LGWR)), summary=[abnormal instance termination]. Instance terminated by LGWR, pid = 3252
由于lgwr进程遭遇ORA-04020,从而使得lgwr进程异常,进而整个数据库crash.
分析trace文件
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options Windows NT Version V6.1 Service Pack 1 CPU : 8 - type 8664, 8 Physical Cores Process Affinity : 0x0x0000000000000000 Memory (Avail/Total): Ph:8395M/32733M, Ph+PgF:41002M/65464M Instance name: oracle11 Redo thread mounted by this instance: 1 Oracle process number: 10 Windows thread id: 3252, image: ORACLE.EXE (LGWR) *** 2019-12-24 18:18:11.072 *** SESSION ID:(384.1) 2019-12-24 18:18:11.072 *** CLIENT ID:() 2019-12-24 18:18:11.072 *** SERVICE NAME:(SYS$BACKGROUND) 2019-12-24 18:18:11.072 *** MODULE NAME:() 2019-12-24 18:18:11.072 *** ACTION NAME:() 2019-12-24 18:18:11.072 A deadlock among DDL and parse locks is detected. This deadlock is usually due to user errors in the design of an application or from issuing a set of concurrent statements which can cause a deadlock. This should not be reported to Oracle Support. The following information may aid in finding the errors which cause the deadlock: ORA-04020: deadlock detected while trying to lock object SYS.orcl -------------------------------------------------------- object waiting waiting blocking blocking handle session lock mode session lock mode -------- -------- -------- ---- -------- -------- ---- 0000000676C20F08 000000066D22BE10 00000006738AB970 X 000000066D22BE10 00000006738A04B0 S 0000000677DF2E80 00000006792E2880 0000000673B13AE8 X 000000066D22BE10 00000006738A19B8 S -------------------------------------------------------- ---------- DUMP OF WAITING AND BLOCKING LOCKS ---------- -------------------------------------------------------- ------------- WAITING LOCK ------------- ---------------------------------------- SO: 0x00000006738AB970, type: 78, owner: 0x000000065D440498, flag: INIT/-/-/0x00 if: 0x3 c: 0x3 proc=0x000000066CDE7AD0, name=LIBRARY OBJECT LOCK, file=kgl.h LINE:8751, pg=0 LibraryObjectLock:Address=00000006738AB970 Handle=0000000676C20F08 RequestMode=X CanBeBrokenCount=2 Incarnation=3 ExecutionCount=0 ……………… SO: 0x00000006738A19B8, type: 78, owner: 0x000000065A38D6C0, flag: INIT/-/-/0x00 if: 0x3 c: 0x3 proc=0x000000066CDE7AD0, name=LIBRARY OBJECT LOCK, file=kgl.h LINE:8751, pg=0 LibraryObjectLock:Address=00000006738A19B8 Handle=0000000677DF2E80 Mode=S CanBeBrokenCount=1 Incarnation=1 ExecutionCount=0 User=000000066D22BE10 Session=000000066D22BE10 ReferenceCount=1 Flags=CNB/[0001] SavepointNum=1b749 LibraryHandle: Address=0000000677DF2E80 Hash=675351da LockMode=S PinMode=0 LoadLockMode=0 Status=0 ObjectName: Name=SYS.orcl FullHashValue=285b654fe3f440652c403c98675351da Namespace=DBINSTANCE(74) Type=CURSOR(00) Identifier=1 OwnerIdn=0 Statistics: InvalidationCount=0 ExecutionCount=0 LoadCount=0 ActiveLocks=1 TotalLockCount=74719 TotalPinCount=0 Counters: BrokenCount=1 RevocablePointer=1 KeepDependency=0 Version=0 BucketInUse=2 HandleInUse=2 HandleReferenceCount=0 Concurrency: DependencyMutex=0000000677DF2F30(0, 0, 0, 0) Mutex=0000000677DF2FC0(0, 149471, 1, 0) Flags=RON/PIN/KEP/BSO/[00810003] WaitersLists: Lock=0000000677DF2F10[0000000673B13B58,000000067382E2F0] Pin=0000000677DF2EF0[0000000677DF2EF0,0000000677DF2EF0] LoadLock=0000000677DF2F68[0000000677DF2F68,0000000677DF2F68] Timestamp: HandleReference: Address=0000000677DF3030 Handle=0000000000000000 Flags=[00] --------------------------------- This lock request was aborted. error 4020 detected in background process ORA-04020: deadlock detected while trying to lock object SYS.orcl kjzduptcctx: Notifying DIAG for crash event ----- Abridged Call Stack Trace ----- ksedsts()+585<-kjzdssdmp()+329<-kjzduptcctx()+288<-kjzdicrshnfy()+99<-ksuitm()+1525<-ksbrdp()+4578<-opirip() +853<-opidrv()+906<-sou2o()+98<-opimai_real()+280<-opimai()+191 <-BackgroundThreadStart()+646<-0000000076CF59CD<-0000000076E2A561 ----- End of Abridged Call Stack Trace ----- *** 2019-12-24 18:18:11.165 LGWR (ospid: 3252): terminating the instance due to error 4020 *** 2019-12-24 18:18:17.483 ksuitm: waiting up to [5] seconds before killing DIAG(3236)
日志显示由于lgwr进程等待LIBRARY OBJECT LOCK超时,从而引起异常,根据经验此类问题一般是由于bug导致,查询mos发现匹配bug信息Bug 18515268 ORA-4020 in ADG Standby Database causing instance crash by LGWR
可以根据需要打上相关Patch 18515268: ACTIVE DATAGUARD STANDBY CRASHES DUE TO AN ORA-4020 ENCOUNTERED BY LGWR