Know more about V$BACKUP_CORRUPTION

The V$backup_corruption view shows corrupted blocks discovered during an RMAN backup. But once the corruption on this blocks has been fixed this view is not updated.

,

library cache: mutex X等待事件, blocker session on cpu

library cache: mutex X等待事件是当一个会话以 exclusive mode持有library cache mutex时,另一个会话当前无论何时申请此mutex时必须等待其释放。很多时候对 library cache做不同的操作时都需要申请一个mutex, 所以最重要的是确认mutex的位置”location”, 该位置有助于分析该类等待事件的原因

当DISK大于1T时,10.2.0.5 ASM错误的识别为4095T ON AIX

前几日在一客户搭建ASM环境,存储工程师为每个LUN划分了1TB大小,但是当创建ASM DISKGROUP时显示为每个ASM DISK约为4PB 大小, 当然不是存储工程师开的玩笑,也不是上帝的馈赠,实际是ASM在AIX 平台上的当ASM DISK LUN 在1T及以上的BUG.

Performance Tunning: cursor: mutex X & cursor: mutex S high wait in 12.2.0.1

朋友一套12C R2多组户架构3节点RAC数据库反应数据库响应缓慢,因远程不方便,只拿到事后一份AWR,数据库出现较高的cursor: mutex X 和cursor: mutex S,sql verison能达到7000多,并且high version的SQL都是递归内部SQL, 12.2的隐藏参数_CURSOR_OBSOLETE_THRESHOLD原来现在默认已加大到了8192,

, , , , ,

Oracle 12.2.0.2/Oracle 18.1 新特性: Sequence SCALE EXTEND ?

ORACLE12C的下一个版本是18.1(12.2.0.2),这里我要分享的这个新特性是12.2 已经悄悄引入但undocument的,这个特性因为没有某些原因在12.2中都没有公开,但是SQL语法已经可用,暂时称做Sequence SCALE EXTEND 。注意公开前不建议在用户应用中使用。

,

Oracle 12cR2新特性:Online Tablespace encryption (Transparent Data Encryption)

TDE是从Oracle 10g R2版本时引入,Transparent Tablespace Encryption对表空间的加密是在ORACLE 11G R1版本引入,但是只支持对新建表空间时指定加密码选项,对后新数据写入加密,在12CR1中可以对表空间OFFLINE后再加密,但是那样对于非常大数据库的数据库就意味着使用更多的时间维护窗口,从12C R2版本引入了online tablespace encryption的新特性,同时还引入了新的管理密钥的方法

, ,

Oracle 12c新特性:ORACLE自动维护的Schema或默认创建的USER

ORACLE 12c有些小特性非常的实用,如Oracle 12c New Feature: Last Login Time for Non-Sys Users,可以列出非SYS用户的最后登录时间,该数据可以做为清理用户里的依据, 如果找出哪些用户是ORACLE 系统用户在12C之前还是相对麻烦一些,因为我们可能知道像sys, system这些系统默认创建的用户,其它如果安装时选用较多的DB option时,往往不容易查找自动在创建数据库里脚本中创建的哪些用户。

ASM Disk Discovery 最佳实践

ASM实例的ASM_DISKSTRING初始化参数使用一个逗号分割的字符串限制ASM实例发现的DISK可以用于ASM DISK, 该字符串支持通配符如使用星号(*)表示LIKE,只有匹配了该字符串中的路径,ASM disk才会被发现;同样支持如果问号(?)为该字符串的第一个字符时,像sqlplus中一样表示的是ORACLE_HOME的路径。注意同一DISK不会因为路径多次匹配而显示多次

,

Troubleshooting ORA-600 [H_MK_WRITING_CR_BG] 11.2.0.3 standby instance crash

env: 11.2.0.3 RAC Dataguard ON Exadata x2, a standby instance crash, alert log show ora-600 internal error, ORA-00600: internal error code, arguments: [H_MK_WRITING_CR_BG], []

How to release still “killed“ status session in v$session? (释放killed的session) (三)

昨天数据库有3个session记录在v$session一直是KILLED状态,且已经好几个小时,当前的等待事件为”db file sequential read”, 其中有一个session是DML SQL,所以最后在事务结束前的行级锁一直未能释放,影响了操作相同记录的业务, 从数据库尝试kill [immeidate]没报错但是无法清理,手动weekup PMON检查PMON trace无报错, 通过操作系统层KILL -9 无报错仍无法清理

,

Troubleshooting ORA-00600: [kcladdle_1], [], [] in RAC 11.2.0.3

突然数据库出现了较高的enq: TX – row lock contention的等待事件,这是一个APPLICATION CLASS的wait event, 通常出现在DML事务级的行或块竞争,这次的MODE为6, 语句只是简单的delete xx where rowid=:bind; 但是查看数据库和应用日志都出现了ORA-600的错误, 判断问题就不再是简单的行事务竞争, 手动模拟语句也还原出问题,但并不是所有记录每次都能触发,现象为运行DELETE SQL时失败并出现ora-600 [kcladdle_1].

Troubleshooting ORA-00959: name is already used by an existing object 案例

这个问题就是TABLE默认的属性Tablespace已不存在,在Split IOT表失败,但是创建的递归“瞬态表”却留在了数据库中,需要人手动清理,如果不删除下次再次尝试时就会提示不同的错误信息“ORA-00959: name is already used by an existing object”,解决方法是手动清理“瞬态表”后修改表的默认属性

, ,

一次存储链路抖动因I/O timeout不同在AIX和HPUX上的不同表现

去年一个故障案例经过时间的沉淀问题没在发生今天有时间简单的总结一下,当时正时午睡时分,突然告警4库8个实例同时不可用,这么大面积的故障多数是有共性的关连,当时查看数据库DB ALERT日志都是I/O错误写失败,后确认8个实例都是使用了存储层的同步容灾技术

, ,

Oracle 补丁那些事儿(PS、PSU、CPU、SPU、BP、DBBP…)

当前ORACLE数据库提供两种方式的补丁一种是主动的Proactive Patches和另一种被动的Reactive Patches,其中Reactive Patches是指过去的ONE-OFF Patch,而过去的PSU,SPU/CPU,BP都是Proactive Patches。从12c(12.1.0.2)起数据库又提供了一个名为DBBP的补丁类型,在数据库安装选择补丁时建议是PSU,CPU,DBBP中的一种…

, ,

Oracle 12c RAC GI两大资源变化GIMR和ASM memory_target

现在老听到抱怨在VM安装12C RAC的资源需求太大,安装个12C GI就要几十G磁盘空间和4G的内存, 这些资源被哪用了?当然离不开GIMR和ASM target memory这两个的变化,这篇就简单的谈谈这两个变化及如何突破限制…

, , ,

Oracle 12c R2新特性: Proxy PDB

这篇继续ORACLE 12.2的新特性, Proxy PDB顾名思义就是一种代理PDB也可以叫 referenced PDB, 实现的是像访问本地CDB中的PDB一样访问远程的PDB,简单可以说可以快捷方,它的应用场景是当一个程序在application Containers中需要调用两个不同CDB的数据源时..

,

安全扫描端口 8888风险 和ora.oc4j resource in ORACLE 11g r2

近期安全扫描发现数据库服务器主机存在端口8888暴露风险, 使用http访问该端口是Oracle Containers for J2EE (OC4J)的页面, OC4J是经过J2EE认证的应用程序服务器,提供JSP, EJB, Servlet等程序支持, 在主机上查看用户进程可以确认一个JVM的OC4J进程,是Oracle CRS自带的资源ora.oc4j调用。通常对于数据库没有什么用途,可以停止该服务。

, ,

Oracle 12c R2 : lsnrctl status show EM Express & PDB GUID service (PDB GUID服务)

在ORACLE 12.2版本中使用LSNRCTL STATUS或lsnrctl service查看监听信息时,如果启用了EM Express,从12.1版本增加了EM express的端口和访问信息;从12.2的版本起如果多租户环境,每个PDB增加了一个对应的GUID+DB_DOMAIN的服务名,无论PDB是open还是close都存在。该服务是数据库的internal service,使用该服务也可以访问PDB,但是不建议使用。

, ,

Troubleshooting: 实例被驱逐和”IP packet reassembles failed“增长 on Linux 6.6

数据库第二个节点被驱逐出集群,并且多次自动重启以失败告终,驱逐原因在GI Alert log显示是私网通信丢失,而重启失败也是因为ASM无法启动,ASM db alert显示IPC Send timeout. 当时ping和tracert并没发现什么异常,从OSW中的netstat -s查看IP packet reassembles failed时间段值大量增长, 这是一套oracle 11.2.0.4 2Nodes RAC on RHEL 6.6的环境

, , ,

Scripts: 如何取正在执行SQL的绑定变量值

如果当前数据库正在执行的一个长SQL出现性能问题,想取得运行时的变量时,在之前的版本中可以使用Errorstack level 3 event dump该会话的cursor信息,从trace文件中取得变量。 在11g r2版本的SQL Monitoring 相关的视图V$SQL_MONITOR.BIND_XML也可以方便的取变量值

, ,