Tuning PGA Memory

You can get the correct size of PGA using V$PGA_TARGET_ADVICE, dynamic performance view.

HAVING expression default Selectivity

In some cases the query optimizer might can not accurately estimate cardinality (e.g. group by having or like with bind variables cause etc..),therefore the Cardinality estimates are based on default seletivity of build-in oracle coredefault seletivity(5%).

oracle forall instructs must be followed by DML

Oracle BULK COLLECT and Oracle FORALL are the new featu […]

US7ASCII DMP 导入 ZHS16GBK DB 一方案

exp 时注意保证三处的字符集一致,对于本例的US7ASCII(10g) DMP 导入 ZHS16GBK DB (11g),采用了修改dmp文件中的两处字符集编号,最终解决了字符集乱码问题。

,

The lowercase and quotes table names may not be able to audit(小写表名可能不会审计)

昨一好朋友问我开了审计,有些表但无审计记录。 下面我来还原这个问题 db_version oracle 102 […]

ORA-1688: unable to extend table SYS.WRH$_ACTIVE_SESSION_HISTORY

1) Export the snapshots and then do a manual purge To p […]

DB File Sequential and Scattered Reads

Both “db file sequential read” and “db file scattered read” events signify time waited for I/O read requests to complete.

Changing SYS Password in RAC (修改SYS密码)

We know that changed a normal user password has no diffrence between a single instance database and a RAC database,we just have to perform “alter user xxx identified by xxx” and the password will be cheanged.

Script: TOP logical read within a specific time period(指定时间逻辑读最多的对象)

根据AWR的收集信息查询出指定时间段内的逻辑读最高的几个对象,script

How to limit program access to database(限止连接数据库使用程序)

有时出于安全考虑限制个别用户只允许特定程序连接或连接数,比如下面的例子是只允许ANBOB用户使用pl/sql dev连接此数据库。

statement suspended, wait error to be cleared(二)

Oracle Database provides a means for suspending, and later resuming,
the execution of large database operations in the event of space allocation failures.

How to check and reclaim allocated unused-space for the segments(预测segment回收空间)

Now I used segment advisor performs analysis on the segments and makes recommendations on how space can be reclaimed…

Script: Oracle Table/Tablespace/DB Growth Prediction(预测表/表空间/库增长)

Some scripts for showing the growth of tablespaces over time periods. to show the starting tablespace size and the end tablespace size, computing the tablespace growth for the time period.

,

How to config hugepage on linux

内存管理是一个非常复杂的结构,在操作系统中用Virtual memory System进行内存管理,pagetable是中记录了内存的虚拟地址和物理地址的映射关系,当一个进程真正的访问数据是首先访问的是page table然后转向真实的地址,cpu中有固定的大小来缓存部份的pagetables,这块区域就是translation lookaside buffer(TLB).

,

about get bind_data column in v$sql(绑定变量值)

今天查看AWR时,发现有个sql占用的cpu很高而且也并不复杂,top 5 event出现了cpu,read by other sessions,而且sql中再次看到的hint index,随后从生产环境中拿到绑定变量参数值进行本地调试,发现hint index 选择了错误的索引一致读为93万,去掉hint立即降低到了36,随后服务器压力将了下来

Troubleshooting log file switch (checkpoint incomplete) event

The log file switch – checkpoint incomplete event tells you that Oracle wants to reuse a redo log file, but the current checkpoint position is still in that log file. This results in redo generation being stopped until the log switch is done.

table function (函数返回结果集)

经常见到select * from table(function(args))的查询方法,对pl/sql 强大功能赞不绝口,比如PIPELINED 管道函数
例子

Session-Level init Parameters or Environment(会话级参数环境)

sometimes we use ALTER SESSION statement to set or modify any of the conditions or parameters that affect your connection to the database. The statement stays in effect until you disconnect from the database. we can query current system Initialization parameter from v$parameter view,but where are able to confirm that the session-level parameter modification happened?

ASM Rebalance and ASM_POWER_LIMIT

ASM is the ability to add and remove disks/luns from a diskgroup with no down time and an automatic rebalancing of the data on the luns. This creates all kinds of possibilities.

Invisible Indexes in oracle11g

11gr1起提供了Invisible Indexes,作用就是通过alter index xx invisible,对CBO隐身,我突然想到之前的一个情况,就是开发的在应用中滥用hint index,当时为了让hint index 无效,当时是选择index rename,现在看来如果是11g可以用invisible