关于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的权限修改其它用户的密码

Troubleshooting Oracle ORA-1410 & ORA-01499 & ORA-08103 block corrupted

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

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]”

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 —————————————- ————————- ————————- —————————————————————- APPEND 8.1.0 NOAPPEND NOAPPEND 8.1.0 APPEND NO_MONITORING 8.0.0 NO_SQL_TUNE 10.2.0.1 DEREF_NO_REWRITE 8.1.0 NESTED_TABLE_GET_REFS 8.1.0 PRESERVE_OID 10.2.0.1 NESTED_TABLE_SET_SETID 8.1.5 NESTED_TABLE_FAST_INSERT 10.1.0.3 INLINE_XMLTYPE_NT 10.2.0.1 REF_CASCADE_CURSOR 9.2.0 NO_REF_CASCADE NO_REF_CASCADE 9.2.0 REF_CASCADE_CURSOR FORCE_XML_QUERY_REWRITE 9.2.0 11.1.0.6 NO_XML_QUERY_REWRITE NO_XML_QUERY_REWRITE 9.2.0 11.1.0.6 FORCE_XML_QUERY_REWRITE IGNORE_WHERE_CLAUSE 9.2.0 OPAQUE_TRANSFORM 10.1.0.3 OPAQUE_XCANONICAL 10.1.0.3 SYS_DL_CURSOR 9.2.0 SQLLDR … Read more

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的具体文本…

Lots of Long transaction caused by database link, and undo hdr show DBA for that slot is 0x00000000

部署GOLDENGATE时发现,当前库中存在较多的长事务,在v$transaction中显示状态一直是ACTIVE, 对于长事务的对OGG的BR或启动抽取位置有较大影响, 奇怪的是这些长事务的起动时间甚至都有3天以上,而且当前会话状态已是INACITVE.而且查看UNDO SEGMENT HEADER上对应的SLOT 的DBA是0x00000000。