ORACLE SCN issue Best Practice (最佳实践)

Recently, we have faced a very serious problem with Oracle SCN. The SCN with a production env ORACLE RDBMS grows very fast, the SCN rate is more than 30k per second . In theory, there should not be such a high transaction volume. The environment is a 11.2.0.3 2-nodes RAC ON AIX 6.1 platform, and have applied PSU11.2.0.3.7 .

Oracle12c R2注意事项: 因BUG生成大量的trace file 包含KRB: (rman module)

升级了Oracle 12cR2的同学,尤其是安装了2018 4月RU的版本(12.2.0.1.180417), 遇好检查下你的trace目录下是否生成了超大量的trace file,或单个超大的trace file文件,因为在这个版本下有两个原因很可能生成这些trace:
1. Trace files generation with message “AUTO SGA: kmgs_parameter_update_timeout gen0 0 mmon alive 1”.
2. Trace files generated from RMAN module with KRB messages.

Oracle12c R2注意事项:DB password file in ASM (DataGuard环境重建PWD)

2C中为了在不同实例间统一的密码管理, 支持把DB密码(ASM password same)存储到ASM DISKGROUP中,这样在维护DG环境时,当同步密码文件时就要先确认一下密码的位置, 同样DG端也可以把密码存储到ASM中,然后使用srvctl modify database修改pwd路径. 这个案例通过在标准化DG配置中因密码不一致产生了各种错误

How to delete SYS.KUPC$ service after kill datapump job

本11.2.0.4 2-nodes RAC, 现象是service_name 参数出现了一些SYS.KUPC$ 的service, 监听上同样有,且停节点1 ,service会漂到节点2, 重启双实例后同样存在, 手动修改service_name可以临时解决,但是重启实例还是会存在,虽然是新增service, 监听上看着乱,其它没什么影响, 这类服务常见于datapump 自动增加的…

Troubleshooting ora-600[ktecgsc:kcbz_objdchk]&ora-600[qesmaGetTblSeg1] when inserting and ora-7445 [kss_first_child] when granting

又近年末,各种事情忙的不可开交, 但最近的BUG又突然接二连三, 争取把在2018年的最后几天习惯性简单的总结了结, 这篇简单的记录一下上个月一套11.2.0.4 2-ndes RAC的案例, 问题发生的第二天说有个表还是不能insert和grant, insert报ora-600[qesmaGetTblSeg1]  和grant 报 ora-7445 [kss_first_child] ,得知事前有对该表做truncate, 这是一个HASH分区表, 相同的表结构在用其它表名一切正常,但是rename tabler后问题又能重现, 包括把表删了重建问题依旧。 下面来还原这个问题: SQL> CREATE TABLE ANBOB.LOC_ANBOB_VARLOG 2 ( “OID” NUMBER(14,0) NOT NULL ENABLE, 3 “VARIABLEID” VARCHAR2(32) NOT NULL ENABLE, 4 “SQLBANDVAL” VARCHAR2(256), 5 “RUNTIME” VARCHAR2(32) NOT NULL ENABLE, 6 “INTIME” DATE DEFAULT sysdate 7 ) PARTITION BY HASH (“OID”) … Read more

oracle 12cR2 新的权限组sysdg, sysbackup, sysrac, syskm

在许多公司中,各种与Oracle数据库相关的任务(如管理ASM和备份/恢复Oracle数据库)都有明确的职责分离。在过去都是使用sysdba管理所有权限如asm\DG\备份, 从Oracle Database 12c R1开始,可以使用SYSBACKUP,SYSDG和SYSKM管理权限。从Oracle Database 12cR2开始,新增加了SYSRAC管理权限..

Troubleshooting ORA-21780 during SMON to clean transient type

This issue happens on Oracle RAC environment 11.2.0.3 , db alert log show ora-21780 frequently caused by the SMON is not able to clean some objects, This short article simply record it. and how to fixed it. # db alert log Fri Nov 02 09:55:59 2018 Errors in file /oracle/app/oracle/diag/rdbms/anbob/anbob1/trace/anbob1_smon_12872.trc: ORA-21780: Maximum number of object … Read more

Oracle 12.2 Flex ASM安装RU后ASM、GIMR等资源未启动, 手动启动提示CRS-2549“it is not a valid candidate as per the placement policy”

今天遇到的一个案例,一套ORACLE 12.2 FLEX CLUSTER, 在安装了RU(20180417)后节点2的CRS启动正常,但是其它如ASM、DB、GIMR 等资源都未启动, GI alert log并未发现错误,手动使用srvctl启动ASM资源提示:
CRS-2549: Resource ‘ora.asm’ cannot be placed on ‘anbob02’ as it is not a valid candidate as per the placement policy

浅谈ORACLE免费数据库Oracle Database XE版

Oracle database XE发布过10G、 11G, 最近XE 18C 发布,而且是18.4版, 注意这里的版本不等同于ORACLE DATABASE EE的版本号。

ORACLE DATABASE XE 18C IS FREE For Me, FREE For You, FREE For Everyone! and Free to Download , Free to Use, Free to Deploy!
看到FREE无比的激动,她不只免费,而且较比之前的版本,是一个Full OPTION ON的版本

Oracle Database 18C (18.3) RPMs 安装方式

近日oracle发布了传说已久的RPMs安装版本18.3, 但不是oracle database core mini版, 安装文件有3.5GB左右大小。  业界这么关注是因为这是oracle database的第一个可以使用rpm方式安装的版本, 这样就简化了数据库的安装部署,降低了oracle安装的技术门槛, 目前可以去官方OTN下载 FOR Linux x86-64bit 版本。 安装介质 安装软件 开始前如果你使用OEL, 拥有ULN, 可以以root身份执行 yum -y install oracle-database-ee-18c 如果当前环境没有ULN需要下载率离线的安装包和oracle数据库的原装软件请求包preinstall,然后以root身份执行 yum install -y install oracle-database-preinstall-18c yum -y localinstall oracle-database-ee-18c-1.0-1.x86_64.rpm 如果是RHEL环境需要手动下载源文件,然后以root身份安装 # RHEL7 curl -o oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm yum -y localinstall oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm rm oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm # RHEL6 curl -o oracle-database-preinstall-18c-1.0-1.el6.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL6/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el6.x86_64.rpm yum -y localinstall … Read more

event “library cache: mutex X” caused by Long time dynamic sampling of large tables

一日数据库多个会话出现较长时间的等待, 等待event是”library cache: mutex X”, 关于这个等待事件以前在post记录过,发生在SQL的解析阶段,在申请libary cache的锁时产生的等待,当时是部分应用session 被一些监控会话堵塞,这些会话正在执行v$sql ,v$sqlarea的收集统计,同时又被一个应用UPDATE会话堵塞,该会话当前是ON CPU,且已经执行了有近2万秒,正在执行动态采样的SQL…

AIX 增加白名单(ipfilter)后导致的CRS启动失败(CRS-1612:Network communication xxx timeout )

本次故障是因为前期主机配置了白名单,安全扫描导致CRS 2节点crash, 在CRS自动重启中又因为白名单,网络通信异常,无法启动CRS进程。此时手动启动2节点甚至会导致1节点crash. 因为目前没有找到官方文档描述对123端口的描述…

Troubleshooting performance wait event ‘row cache lock’

Row Cache 或 Data Dictionary Cache 是共享池中的一个内存区域,用于保存数据字典信息以减少数据字典表的物理 I/O。行高速缓存锁主要用于序列化对数据字典的更改,当需要对数据字典高速缓存进行锁定时,将等待该锁,数据字典行上的锁称为row cache lock。等待此事件通常表示发生了某种形式的 DDL,或者可能是递归操作,例如存储管理和递增序列号。

Oracle Internal C functions (非官方)

anbob.com收集的一些ORACLE 数据库内部调用C函数,以后会一直更新下去,如果有不存在的可以提供发函数给我。 abort ==> No direct match action ==> No direct match adbdrv ==> alter database driver al ==> No direct match A ==> No direct match apadrv ==> SQL Access Path Analysis drive access path selection for a sql command assert ==> No direct match auddft ==> audit default function BackgroundThreadStart ==> No direct … Read more

Oracle Database 配置IPV6 (一)

Oracle 11.2中除了ORACLE RAC和Oracle Clusterware所有功能都支持IPV6, 还有也不支持ASM使用IPV6,支持IPV6和IPV4共存. 在ORACLE 12C中,Oracle支持IPV4和IPV6在同一个网络,同样也可以配置PLUBIC network(Public/vip)在IPV6和IPV4,但是确保同一集群中所有节点使用相同的IP协议。但12.1 时不支持WINDOWS和private newwork. 在12.2 版本中 ORACLE提供了完全的支持IPV6,包括WINDOWS平台,ASM, FAN, 所有平台中的ORACLE Clusterwarer的private network。