Leap Second (闰秒) 在ORACLE环境的影响

因为我国是东八时区(UTC+8),所以我国将在北京时间2017年1月1日的7时59分59秒也会做闰秒调整和全球同步,到时会出现7:59:60的特殊现象。对时间敏感的系统不可忽略,除了航天系统,我们的数据库系统应该也要做好检查, 润秒有可能会使OS Reboot,应用HANG, Clusterware restart影响.

,

Oracle 12c New Feature: Last Login Time for Non-Sys Users

对于操作系统的SHELL登录通常都会打印该用户的上一次登录时间, 这个安全特性在12c中同样在使用sqlplus登录时引入默认显示在banner中, 不同的是oracle不显示sys或操作系统认证的登录, 其实在之前的版本中对于这类用户的登录是都强置记录在Adump的审计文件中的…

, ,

understand 11G clusterware logfile(保留策略及修改方式)

在分析一个问题时发现mDNS的LOG所有文件才只保留了几分钟的日志, 我们都知道CRS里的日志多数都是CRS自身滚动保存覆盖的,
我被问到能不能把mDNS日志多保留一段时间? 特意总结了一下CRS日志的保存规则.

, ,

oracle 12c new feature: Automatic Report Capturing Feature

As part of this feature, some monitoring SQLs are executed by MMON_SLAVE to identify the resource-intensive SQLs and
generate the SQL Monitoring report automatically for those SQLs. Those SQLs consume little more CPU and it is expected behavior being a new feature

The Agent orarootagent.bin process Memory Leak(内存溢出) case

昨天有套数据库主机内存使用告警, 环境为11201 2NODES RAC on AIX, 发现orarootagent.bin进程占用了20G+的内存, 符合在该版本一个典型的ORACLE 内存溢出的BUG. 这里只是记录一下 分析思路.

ORACLE 12.1 New Feature: Valid Time Temporal

Valid Time Temporal 特性就是基于表上的两个时间类型的字段做为开始和结束时间实现数据的有效性逻辑显示控制,oracle 12.1版本引入, 对于表中的记录可以控制只显示在有效时间内或限制时间字段为NULL值时

Debug oracle 常用的一些trace命令

当oracle遇到问题时, 当表面的现象和现有的log无法为我们诊断问题提供足够的信息时, 希望可能通过打开oracle 的debug开关,生成更详细的trace 文件提供更多的信息, 这里整理了一些trace的命令.

关于oracle 安全的小知识dbms_ir , dbms_utility, bypass privileges via view

Oracle数据库安全问题最近几年变的格外关注, 除了数据泄露外还有一些数据库自身的问题,在没有安装最新PSU 或相关CPU时,如果被心存不鬼的人利用将会非常危险. 这里我简单记录三个问题, 测试环境为11.2.0.4 on solaris 11 OS(no patch any PSU or CPU).
1, 使用dbms_ir执行SQL 脚本
2, 只有create session 权限使用dbms_utility 创建表
3, 有select any dictionary的权限修改其它用户的密码

ORA-00600: internal error code, arguments: [504] [row cache objects] on oracle 9i

My db env Oracle 9.2.0.6 on SunOS 5.10, during the problem occurs Database hang, and many sessions wait ‘libaray cache lock’ and after awhile sqlplus connect failed, Before the problem occurs ,We to a statspack, and explain plan for sql, but the sql did not use parallel and db_link, and select on v$sql_plan

ora-01499 & ora-08103 caused by block corrupted or write loss a case

ORA-1499 is produced by statement “ANALIZE TABLE|CLUSTER VALIDATE STRUCTURE CASCADE” to report an inconsistency between a table or a cluster and its index where an index,ORA-8103 is caused by an invalid block type. The block header has an invalid block type or the block type inside the block is not expected

,

Instance Crash in 11.2.0.3 RAC and ORA-600 [kcbo_switch_cq_1]

Errors in file /oracle/app/oracle/diag/rdbms/anbob/anbob1/trace/anbob1_pmon_15074000.trc:
ORA-00600: internal error code, arguments: [kcbo_switch_cq_1], [], [], [], [], [], [], [], [], [], [], []
PMON (ospid: 15074000): terminating the instance due to error 472

,

Tuning ‘latch free’ & ‘null event’ wait event in Oracle 9i

最近遇到一套9I数据库遇到了性能问题, 现象是数据库主机CPU使用率很高应用响应缓慢,Cpu Idel几乎为0, 从v$session_wait查看数据库当前的活动会话在等待’null event’和’latch free’.

Crsd start fail and crsd.log show “Policy Engine is not initialized yet”& evmd.log show “[gipcretConnectionRefused] [29]”

最近一套数据库的2节点半夜突然crash,被1节点驱逐, AGENT 启动DB失败,手动重启CRS启动失败,后来发现日志中的现象与MOS中多篇bug很像但又不是,节点2CRS启动失败,AIX环境,crs日志显示”Policy Engine is not initialized yet”,evmd.log 显示”[gipcretConnectionRefused] [29]”

11.2 impdp ORA-31693 ORA-29913 ORA-27163 when the table has xmltype column

ORA-31693: Failed to load / unload the data object table “ANBOB” “SDTEMPETL” object is ignored because of the error.:
ORA-29913: error in executing the call ODCIEXTTABLEFETCH
ORA-27163: insufficient memory(内存不足)

,

11.2.0.3 CRS start slow and cssd.log show ‘Msg-reply has soap fault 10’ 案例

修改PUBLIC IP应该就可以,但是应用前期连接数据库存在使用public IP的中件间,而且短时间内无法梳理并修改, 如何及解决CRS启动慢的问题又可以避免中间件或为中间件争取时间梳理? 下面是我的一种方案。

Performance Tunning: enq: JI – contention

JI enqueue is used to serialize the refresh of a materialized view, JI enqueue is acquired in exclusive mode on the mview base (container) table when the refresh is being performed, it ensures that two or more refresh processes do not try to refresh the same object.

Troubleshooting: ORA-00600: [kkpo_rcinfo_defstg:delseg], [xxxx] & ora-600 [25027] & ora-600 [ktadrprc-1]

因为某些原因数据字典表不一致,导到该表在查询或导出时都会提示ora-600 [kkpo_rcinfo_defstg:delseg] 错误,因为数据库使用延迟段创建,手动分配segment时提示ORA-600 [25027],对分区做MOVE时会提示ORA-600 [ktadrprc-1], 使用hcheck脚本检查会提示Orphaned TABPART$

,

Oracle 12.2.0.1 SQL HINT

source: v$sql_hint NAME VERSION VERSION_OUTLINE INVERSE […]

Oracle 12C new feature: more detail from scheduler job view

我喜欢在PROCEDURE中增加一些DBMS_OUTPUT输出调试过程,但是只有在控制台运行才可以看到输出, 在11g及之前的版本中使用DBMS_SCHEDLER创建的JOB已经增加了DBA_SCHEDULER_JOB_RUN_DETAILS 视图可以记录一些运行的日志信息如error#,在12C的版本中再增强,同样记录了procedure中使用的DBMS_OUTPUT的输出和ERROR的具体文本…

12C R2 new feature: 128 bytes for identifiers (表名长度可用128字节)

sys@pdborcl:orcl> CREATE table anbob_com_copyright_anbob_com_copyright_anbob_com_copyright_anbob_com_copyright_t(id int, col_name_col_name_col_name_col_name_col_name_col_name_col_name_col_name_col_name_largecolumn varchar2(5000));
Table created.
从12c r2 Release起表名和列名的长度限制为128 bytes.