PGA引发的ORA-04030报错的处理思路
一个故障案例,报错信息如下ORA-04030: 在尝试分配 16328 字节 (koh-kghu call ,kollrsz) 时进程内存不足oerr查看报错信息,是process获取不到足够的内存,server process消耗的是PGA,而非SGA[oracle@febdb ~]$ oerr ora 0403004030, 00000, "out of process&n
Oracle SQL 优化之sql tuning advisor (STA)
前言:经常可以碰到优化sql的需求,开发人员直接扔过来一个SQL让DBA优化,然后怎么办?当然,经验丰富的DBA可以从各种方向下手,有时通过建立正确索引即可获得很好的优化效果,但是那些复杂SQL错综复杂的表关联,却让DBA们满头大汗。如下特别介绍一种oracle官方提供的科学优化方法STA,经过实践,不敢说此特性绝对有效,但是可以开阔思路,并且从中学到许多知识,不再用“猜”的方式去创建索引了。&n
oracle 11g常用隐含参数
ORACLE 11GR2常用参数(含隐含参数)设置如下:alter system set "_PX_use_large_pool" = true scope=spfile;alter system set "_clusterwide_global_transactions" = false scope=spfile;alter system set "_gc_defer_time" = 3 scope=spfile;alter system set "_resource_manager_always_off" = true scope=spfile;alt...
enq: HV - contention(Insert append partion table)
Bug 8198783 - Create partitioned table as select in RAC shows significant HV enqueue wait time (文档 ID 8198783.8)DescriptionCTAS can show significant HV enqueue wait time in RAC environments. Rediscovery Notes: This fix introduces an enhancement for direct patch inserts / CTAS on RAC Sy...
PGA FAQ: ORA-4030 [Video] ( Doc ID 399497.1 )
PGA文档FAQ: ORA-4030 [Video] ( Doc ID 399497.1 )
使用AWK分析Oracle系统锁定、Hang状态
在早期Oracle版本中,由于技术不成熟等原因,数据库锁定和僵死状态还是时有发生的。对待这些问题,老先生们的处理策略无外乎是“重启”和“考究”两种策略。所谓“重启”,通过强制的重启服务器或者数据库,将软硬件偶然出现的锁定僵死状态重置,是一种最简单的处理办法。但是,如果是应用程序层面潜在的缺陷、...
使用hanganalyze诊断db hang
1.在session1中更新数据SQL> select userenv('sid') from dual;USERENV('SID')--------------45SQL> update test1 set object_id=1 where object_id=2;1 row updated.2.在session2中也更新统一条数据SQL> select ...
查找大开销的SQL脚本
select l.sid ssid,substr(opname,1,15) opname,target,trunc((sofar/totalwork)*100) pct,to_char(60*sofar*8192/(24*60*(last_update_time - start_time))/1024/1024/60, '9999.0') rate,elapsed_seconds/60 es,ti...
oswatch的安装和使用
OSWatch是Oracle的一个操作系统监控工具,可以从Metalink上下载(NODE 301137.1)。[root@localhost ~]# tar xvf oswbb601.tar[root@localhost ~]# cd oswbb[root@localhost oswbb]# lsanalysis &...
索引监控
SQL> alter index sys.test1_objectid monitoring usage; --开启监控SQL> SELECT * FROM V$OBJECT_USAGE;INDEX_NAME ...
统计信息相关视图
--查看表的统计信息select table_name,owner,num_rows, --总行数blocks, ...
null作为条件使用索引的情况
通常情况下,null作为条件是不会使用到索引的,但创建符合索引后,可以使用到索引。实验如下:SQL> create table test1 as select * from dba_objects;Table created.SQL> create index test1_idx on test1(object...
(转)几个常用ORACLE运维监控的SQL语句
1.消耗CPUSELECT a.CPU_TIME, --CPU时间 百万分之一(微秒) a.OPTIMIZER_MODE,--优化方式 a.EXECUTIONS,--执行次数 a.DISK_READS,--读盘次数 a.SHARABLE_MEM,--占用shared pool的内存多少 a.BUFFER_GETS,--读取缓冲...
隐式转换引起的索引失效
隐式转换引起的索引失效SQL> create table test1 (userid varchar2(10));Table cre...
Index Skip Scans的产生
11G官方解释:Index Skip ScansIndex skip scans improve index scans by nonprefix columns. Often, scanning index blocks is faster than scanning table data blocks.Skip scanning lets a composite index be ...
view merging,在有rownum情况下不使用的原因!
创建了2个VIEW,一个使用了ROWNUM。使用ROWNUM后不会view merging了。导致全表扫描了。SQL> create or replace force view MICS_APP.VIEWTEST (OBJECT_NAME) as select OBJECT_NAME from test;View created.SQL> cre...
生成statspack报告
1.创建perfstat用户和相关对象。SQL> @$ORACLE_HOME/rdbms/admin/spcreate.sql2.登录并产生2个时间点的快照SQL> conn perfstat/oracleConnected.SQL> exec statspack.snap;PL/SQL procedure successfully comple...
AWR分析
DB NameDB IdInstanceInst numReleaseRACHostICCI1314098396ICCI1110.2.0.3.0YESHPGICCI1 Snap IdSnap TimeSessionsCursors/SessionBegin Snap...
Nologging到底何时才能生效?
请大家仔细看那些测试的例子.看了Tom的解释,始终觉得牵强.开始以为可能是bug经过观察和测试,终于发现了Nologging的秘密我们知道,Nologging只在很少情况下生效通常,DML操作总是要生成redo的这个我们不多说.关于N...
并行执行的使用
--并行查询select /*+parallel(t 4)*/ count(*) from user_tables t;select /*+parallel(t 4)*/ count(*) from t where object_name in(select /*+parallel(t1 4)*/ object_name from t1);--一个并行查询能够执行,...