摘要:
与单实例不同,在RAC环境中,由于多节点的原因,会因为节点间的资源争用产生GC类的等待,而这其中,GCBufferBusyWaits又是最为常见的,从性能角度上说,RAC是把双刃剑,用的好,能够有很大的性能提升,用的不好,则会由于内部资源竞争的影响,严重拖累数据库性能。简单来说,用RAC,就一定要将各个节点隔离化,不管是通过业务隔离,区域隔离还是什么其他隔离手段,最终的目的,就是要各个节点所承担的业务,访问不同的数据对象,最大可能的减少节点间的资源争用,才能发挥RAC集群系统的最大性能。因此,如果在一个RAC数据库中,发现大量的GCBufferBusyWaits,则很大程度上说明,该套系统可能 阅读全文
2013年7月31日 #
摘要:
V$SESSION是APPS用户下面对于SYS.V_$SESSION 视图的同义词。在本视图中,每一个连接到数据库实例中的session都拥有一条记录。包括用户session及后台进程如DBWR,LGWR,arcchiver等等。V$SESSION中的常用列V$SESSION是基础信息视图,用于找寻用户SID或SADDR。不过,它也有一些列会动态的变化,可用于检查用户。如例:SQL_HASH_VALUE,SQL_ADDRESS:这两列用于鉴别默认被session执行的SQL语句。如果为null或0,那就说明这个session没有执行任何SQL语句。PREV_HASH_VALUE和PREV_AD 阅读全文
摘要:
锁定类型 行级锁 表级锁行级锁 ---- 行被排他锁定 ----在某行的锁被释放之前,其他用户不能修改此行 ----使用 commit 或 rollback 命令释放锁 ----Oracle 通过使用 INSERT、UPDATE 和 SELECT…FOR UPDATE 语句自动获取行级锁SELECT…FOR UPDATE 子句―在表的一行或多行上放置排他锁―用于防止其他用户更新该行―可以执行除更新之外的其他操作―select * from goods where gid=1001―for update of gname;―只有该用户提交事务,其他用户才能够更新gnameFOR UPDATE W 阅读全文
摘要:
Oracle的TM锁类型锁模式锁描述解释SQL操作0none1NULL空Select2SS(Row-S)行级共享锁,其他对象只能查询这些数据行Select for update、Lock for update、Lock row share3SX(Row-X)行级排它锁,在提交前不允许做DML操作Insert、Update、Delete、Lock row share4S(Share)共享锁Create index、Lock share5SSX(S/Row-X)共享行级排它锁Lock share row exclusive6X(Exclusive)排它锁Alter table、Drop able、 阅读全文
2013年7月30日 #
摘要:
在有些执行计划中,可以会看到 BITMAP CONVERSION FROM ROWIDS这样的东东,也许你会感觉奇怪,我没有使用位图索引怎么出现了bitmap。我通过一个sql和大家分析下原因:sql语句为:SELECT *FROM (SELECT a.*, ROWNUM rnFROM ( SELECT module_no, MAX (id) AS idFROM vasoa.tab_moa_historypage tWHERE t.company_id = :1 AND t.user_id = :2 AND t.TYPE = :3GROUP BY module_noORDER BY id DE 阅读全文
摘要:
SQL> select rownum rn ,a.* from cnmir.ew_auctions a where rownum select * from cnmir.ew_auctions where issue_id<80;Execution Plan----------------------------------------------------------Plan hash value: 518049957--------------------------------------------------------------------------------- 阅读全文
摘要:
相信做oracle开发和管理的朋友对sort肯定不会陌生,大家通常都遇到这样那样的排序性能问题,所以我写这一系列关于sort的文章告诉大家在oracle里面sort是怎么一回事以及如果调整sort获得更好的性能。首先,我们来回顾一下什么情况下需要sort,当取distinct值的时候需要,当进行merge join的时候也需要,当语句包含group by,order by的时候需要,当创建索引的时候需要等等。那么我们来看一下在oracle里面排序分为哪几种方式呢?一.SORT UNIQUE : 发生在我们需要取distinct值的时候 , 也会发生在in的子查询里sort unique发生在我 阅读全文
摘要:
在Oracle中对用户的管理是使用权限的方式来管理的,也就是说,如果我们想使用数据库,我们就必须得有权限,但是如果是别人将权限授予了我们, 我们也是能对数据库进行操作的,但是我们必须要已授权的表的名称前键入该表所有者的名称,所以这就是比较麻烦的,遇到这种情况,我们该怎么办呢?创建个Oracle同义词吧!这样我们就可以直接使用同义词来使用表了。1.同义词的概念Oracle 数据库中提供了同义词管理的功能。同义词是数据库方案对象的一个别名,经常用于简化对象访问和提高对象访问的安全性。 www.2cto.com 在使用同义词时,Oracle数据库 将它翻译成对应方案对象的名字。与视图类似,同义词并不 阅读全文
2013年7月29日 #
摘要:
一、AIX1.查看CPU数:(1) smtctl 从AIX5.3起,对于power5的机器,系统引入了SMT(Simultaneousmulti-threading)的功能,其允许两个处理线程在同一颗处理器上运行,对操作系统而言,一颗物理处理器逻辑上会成为两个处理单元(逻辑处理器)。SMT功能启用:逻辑cpu个数是物理cpu个数的两倍,SMT功能禁用:逻辑cpu个数与物理cpu个数相等。(2)bindprocessor -q 查看逻辑cpu个数(3)vmstat 查看逻辑cpu数(4)prtconf 查看物理cpu数(5)lsdev -Cc processor 查看物理cpu数(6)lscfg 阅读全文
摘要:
在实例一中,我们读取到了x$bh中的tch字段,该字段表示的该字段被读取/写入的次数,这个值在oracle的LRU算法中,是一个重要的参数,如果这个字段被访问,则该值就会增加:1,第一次查看TCH的值: 1.1 获得表ID: SQL> select data_object_id from dba_objects 2 where owner='SYS' and object_name='TEST'; DATA_OBJECT_ID -------------- 60629 1.2 获得表所占用的数据库ID: SQL> select unique dbab 阅读全文