Author: mac

  • 如何公开Oracle trace文件?

    隐式参数_trace_files_public决定了Oracle产生的trace文件是否公开,该参数默认值为FALSE,也就是非DBA/OINSTALL组的用户是没有权限读取数据库产生的trace文件的;在某些场合中我们需要让非DBA组的用户也能访问trace文件,就可以通过修改该参数实现。请看下面的例子: SQL> select * from v$version; BANNER —————————————————————- Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 – 64bi PL/SQL Release 10.2.0.4.0 – Production CORE 10.2.0.4.0 Production TNS for Linux: Version 10.2.0.4.0 – Production NLSRTL Version 10.2.0.4.0 – Production SQL> col name for a20 SQL> col value for a20 SQL> col describ for a40 SQL> SELECT x.ksppinm…

  • 11g新特性之IO校准(IO Calibration)

    IO校准(IO Calibration)特性可以帮助我们了解存储系统的真实性能,以进一步判断I/O性能问题是由数据库还是存储系统自身引起的。I/O校准特性(IO Calibration)通过对Oracle数据文件的随机I/O访问存储介质,其结论值更符合数据库IO性能的真实情况。 在使用该特性前,我们要确保满足以下条件: 调用该存储过程需要用到SYSDBA权限 TIME_STATISTICS 参数为true: SQL> show parameter timed_statistics; NAME TYPE VALUE ———————————— ———– —————————— timed_statistics boolean TRUE 必须打开异步IO;注意在使用文件系统时,FILESYSTEMIO_OPTIONS需设为SETALL或ASYNC,否则Oracle不会启用异步IO。 可以通过以下查询检验是否启用了异步IO: SQL> SELECT NAME, ASYNCH_IO 2 FROM V$DATAFILE F, V$IOSTAT_FILE I 3 WHERE F.FILE# = I.FILE_NO 4 AND FILETYPE_NAME = ‘Data File’; NAME ASYNCH_IO ——————————————————————————– ——— D:\TOOLS\ADMINSTRATOR\11G\ORADATA\PROD\DATAFILE\O1_MF_SYSTEM_65DN8HXT_.DBF ASYNC_ON D:\TOOLS\ADMINSTRATOR\11G\ORADATA\PROD\DATAFILE\O1_MF_SYSAUX_65DN8J18_.DBF ASYNC_ON D:\TOOLS\ADMINSTRATOR\11G\ORADATA\PROD\DATAFILE\O1_MF_UNDOTBS1_65DN8J1S_.DBF ASYNC_ON D:\TOOLS\ADMINSTRATOR\11G\ORADATA\PROD\DATAFILE\O1_MF_USERS_65DN8J2X_.DBF ASYNC_ON…

  • 11g中AWR新快照视图

    DBA_HIST_IOSTAT_DETAIL视图记录了不同类型和组件功能所作IO的统计数据。这个视图的数据来自于V$IOSTAT_FILE和V$IOSTAT_FUNCTION 2个动态视图的快照。值得一提的是V$IOSTAT_FILE,它是11g中新引入的动态性能视图: SQL> select filetype_name, asynch_io, access_method, retries_on_error 2 from v$iostat_file; FILETYPE_NAME ASYNCH_IO ACCESS_METH RETRIES_ON_ERROR —————————- ——— ———– —————- Other ASYNC_OFF OS_LIB 0 Control File ASYNC_OFF 0 Log File ASYNC_OFF 0 Archive Log ASYNC_OFF 0 Data File Backup ASYNC_OFF 0 Data File Incremental Backup ASYNC_OFF 0 Archive Log Backup ASYNC_OFF 0 Data File Copy ASYNC_OFF…

  • 分析Oracle Mutex等待事件

    Troubleshooting or analyzing waits on mutex events, i.e. ones that start with “cursor:”, are very similar to each other and below are some guidelines. There are many bugs related to problems using mutexes in Oracle 10g, the first version where mutexes were introduced. If you are seeing excessive waits on mutexes, a quick fix may…

  • Script:Lists Text index and it’s dependent objects

    Script:Lists Text index and it’s dependent objects   set linesize 85; set verify off; spool bde_chk_imt.lst accept idx_name prompt ‘Enter the Text index name: ‘ accept tbl_name prompt ‘Enter the base table name: ‘ prompt ‘– Printing Object Information’ set pagesize 20 column segment_name format a25 heading ‘Object|Name’ column tablespace_name format a10 heading ‘Tablespace’ column…

  • UNION ALL returning wrong results?

    有应用人员反映某套Linux上的11.2.0.1数据库系统中出现了UNION ALL后返回的结果集不正确的问题,我们具体分析下出现问题的其中一条语句: SELECT MTL_SECONDARY_INVENTORIES.SECONDARY_INVENTORY_NAME, MTL_SECONDARY_INVENTORIES.ORGANIZATION_ID, MTL_SECONDARY_INVENTORIES.DESCRIPTION, MTL_SECONDARY_INVENTORIES.AVAILABILITY_TYPE, MTL_SECONDARY_INVENTORIES.MATERIAL_ACCOUNT, MTL_SECONDARY_INVENTORIES.MATERIAL_OVERHEAD_ACCOUNT, MTL_SECONDARY_INVENTORIES.RESOURCE_ACCOUNT, MTL_SECONDARY_INVENTORIES.OVERHEAD_ACCOUNT, MTL_SECONDARY_INVENTORIES.OUTSIDE_PROCESSING_ACCOUNT, MTL_SECONDARY_INVENTORIES.ASSET_INVENTORY, MTL_SECONDARY_INVENTORIES.EXPENSE_ACCOUNT, MTL_SECONDARY_INVENTORIES.ENCUMBRANCE_ACCOUNT, MTL_SECONDARY_INVENTORIES.ATTRIBUTE3, MTL_SECONDARY_INVENTORIES.ATTRIBUTE5, WORKFLOW_START_TIMES.WORKFLOW_START_TIME FROM REPEMEAERP.MTL_SECONDARY_INVENTORIES, REPEMEAERP.WORKFLOW_START_TIMES WHERE MTL_SECONDARY_INVENTORIES.DW_UPDATE_DT > TO_DATE(’01/01/1900 00:00:00′, ‘MM/DD/YYYY HH24:MI:SS’) AND MTL_SECONDARY_INVENTORIES.DW_UPDATE_DT TO_DATE(’01/01/1900 00:00:00′, ‘MM/DD/YYYY HH24:MI:SS’) AND MTL_SECONDARY_INVENTORIES.DW_UPDATE_DT select * from v$version; BANNER ——————————————————————————– Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – 64bit Production PL/SQL Release 11.2.0.1.0…

  • 共享池中的NETWORK BUFFER

    中午休闲时在itpub看到一个关于network buffer占用大量内存的求助帖,帖子原文如下: 各位大侠们,请教个问题。昨天遇到一个solaris10平台下的oracle10g(10.2.0.4)数据库报共享内存不足,发现数据库的sga_target才2512M,而在v$sgastat视图中查到的 shared pool–>NETWORK BUFFER就有1848744416字节,是什么引起network buffer这么大呢,在udmp目录下1分钟产生几个跟 ORA-4031相关的文件。 ================== SQL> show parameter sga NAME                                 TYPE        VALUE ———————————— ———– —————————— lock_sga                             boolean     FALSE pre_page_sga                         boolean     FALSE sga_max_size       …

  • Oracle中清除游标缓存的几种方法

    9i以后引入了bind peeking绑定变量窥视特性,但该特性常有帮当忙之嫌,所以有了11g的自适应游标特性。排除因绑定变量窥视造成的因素外,统计信息讹误也会造成执行计划偏差,这时我们就可能需要清除指定游标的缓存信息,从而达到重新解析的目的。 下面我们列举几种可以达到清除游标缓存的方法,权作抛砖引玉: 1. alter system flush shared_pool;              /* 最简单最粗暴的方法,清除所有游标缓存,可能造成短期内大量解析,不推荐*/ 2. dbms_shared_pool 包很早就有了,但该包名下的purge过程却要到10.2.0.4才出现,Bug 5614566最早在2006年描述了需要清除游标缓存接口的要求: Hdr: 5614566 10.2.0.2 RDBMS 10.2.0.2 DICTIONARY PRODID-5 PORTID-176 Abstract: WE NEED A FLUSH CURSOR INTERFACE *** 10/20/06 07:48 am *** 而且该过程在10.2.0.4中默认是无法正常使用的,需要通过设置event 5614566或者打上5614566补丁来启用;具体设置方法如下: alter system set events ‘5614566 trace name context forever’; 该存储过程的具体argument如下: PROCEDURE PURGE 参数名称 类型 输入/输出默认值? —————————— ———————– —— ——– NAME VARCHAR2…

  • Upgrading to RAC 11g R2 What you should know

    How to upgrade? Recommended: “Swing Kit” Set up a new cluster on separate hardware Install Grid Infrastructure at your leisure Avoid time pressure Create a physical standby on the new cluster At a pre-defined outage window, perform a switchover Remember: you don’t need to upgrade the database at the same time as you upgrade to…

  • 哪里有深入学习Oracle的资料?

    订阅了[email protected]邮件列表(顺便提一下,订阅这个邮件列表也是学习Oracle的好方法,它完全免费,且有许多Oracle界的”大师”出没于此,当然要通过审查才能发言;你可以从freelists.org上找到入口!)的朋友可能在若干天前收到了一封来自Guillermo Alan Bort关于到哪里可以找到学习Oracle内部工作原理资料的邮件。 热心的邮友给出了五花八门的答案,我们来梳理一下这些渠道,以方便来者。 著名的juliandyke的巢穴,他写了许多独创的专题,本人也从他的著作中获益良多 http://juliandyke.com oraktable.net上汇集了众多专家在博客上发表的最新技术文章 http://www.oaktable.net/members 致力于挖掘RAC技术,可以说是研究RAC最好的站点 http://www.oracleracsig.org Oracle 8i service internal作者的站点,虽然已经多年未更新,却是你不能错过的一课 http://www.ixora.com.au/ Tanel Poder可能是世界上真正的第一个OCM,他有很多关于internal和performance的著作 http://blog.tanelpoder.com/ 著名的《Cost Based Oracle Fundamentals》的作者Jonathan Lewis在wordpress上的博客 http://jonathanlewis.wordpress.com/ 这就像是专门存放Oracle资料的图书馆 http://www.morganslibrary.org/library.html Pete Finnigans是Oracle security方面的专家,发表了大量关于hack Oracle的文章 http://www.petefinnigan.com 我们之前说的邮件列表的入口! http://www.freelists.org/webpage/oracle-l to be continued ………..