Oracle Statspack报告中各项指标含义详解!(转)
Buffer Hit Ratio#<#90#数据块在数据缓冲区中的命中率,通常应该在90%以上,否则考虑加大 db_block_buffers(9i 以上可是db_cache_size)Buffer Nowait Ratio#<#99#在缓冲区中获取buffer 的未等待比率Library Hit Ratio#<#98#主要代表着在共享区的命中率,通常在98%以上In Memory Sort Ratio#<#0#如果过低说明有大量的排序在临时表空间中进行,可尝试增加sort_area_sizeRedo Nowait Ratio#<#98#写日志的不等待比率,太低可调整log_buffer(增加)和 _log_io_size(减小,默认为1/3*log_buffer/log_block_size,使得 _log_io_size
一次rollback segments 恢复
rollback segments 恢复database: oracle 7.3.4由于停电导致数据库错误,查看alert.log时发现如下错误Sat May 21 21:26:01 2011ORACLE Instance RT (pid = 6) - Error 1578 encountered while recovering transaction (3, 60).Sat May 21 21:26:01 2011Errors in file /home/oracle/rdbms/log/smon_rt_740.trc:ORA-01578: ORACLE data block corrupted (file # 2, block # 17020)ORA-01110: data file 2: '/home/oracle/dbs/rbsRT.dbf'看来是data file 损坏了,该data file 为rollback 的文件,而且没有备份查看rollbak segment的状态如下sel
rename role(重命名role)
rename roleoracle 没有重命名role的命令,自己写了一个.role 主要包含系统权限(如create table等等),object权限(如grant select on table), 以及该role包含的role(grant role to role),还有包含该role的帐号. 这些内容通过以下四个系统表就可以查清除了 与role有关 dict DBA_ROLE_PRIVS #包含role的帐号 ROLE_ROLE_PRIVS #被grant给role的role ROLE_SYS_PRIVS #role 系统权限 ROLE_TAB_PRIVS #role object权限以下为脚本,需要用dba权限来做connect sys/sys as sysdba;set feed off head off linesize 200 pagesize 50000de
sql*menu5 sql*form3 使用10g客户端
sql*menu5 sql*form3 使用10g客户端 一直以来,sql*menu5和sql*form3使用的oracle客户端都是oracle7.3.4版本的,但是数据库使用的是10g的,导致系统总出些莫明其妙的问题. 这两个都是骨灰级的软件了,找不到安装软件,试着拷贝软件目录到10g下,居然可以运行. 环境如下 os : sloaris 5.10 10g客户端: oracle 10g databse software 10.2.3 未安装数据库 sql menu: 5.0 sql form: 3.0 拷贝如下文件和目录到相关目录 cd /home/ora10g/product/10.2.0 cp -r /home/oracle/menu5 . cp -r /home/oracle/form30 . cp -r /home/ora
有关Undo表空间与回滚段的一些查询语句记录
有关Undo表空间与回滚段的一些查询语句记录--与回滚段相关的几个系统参数transactions_per_rollback_segmenttransactionsmax_rollback_segmentsrollback_segments 回滚段类型为public则与该参数无关--相关的几个视图:DBA_UNDO_EXTENTSGV$UNDOSTATV$UNDOSTATDBA_ROLLBACK_SEGSGV$ROLLSTATV$ROLLNAMEV$ROLLSTAT---分析 UNDO 的使用情况 SELECT TABLESPACE_NAME,STATUS,TRUNC(SUM(BLOCKS) * 8 / 1024) AS "Size M",COUNT(*) Undo_Extent_NumFROM DBA_UNDO_EXTENTSGROUP BY TABLESPACE_NAME, STATUS---监控undo表空间SELECT BEGI
一个超大Table切换成分区的经历
近日,公司要求将一个Table做优化,原因是因为在基于这个Table做查询时异常慢。看了下这个Table的基本情况,表有27G大小,有两个索引,一个索引24G,一个索引15G,超大啊。这种情况,明显要做分区。看了下Table的结构,数据是按日期插入的,考虑到以后删除的需要,采取用按月来做分区。由于每天都有近百万的数据量,只用range的方式是不行了,只好采用range-hash的方式。 在设子分区的数量时,走了一些弯路。开始盲目的将子分区数设的很大,每个分区设了1024个子分区。结果测试时,竟然比原来还要慢。看来分区数不能瞎设啊。做了多次实
Oracle 合并行/多行合并成一行
Oracle 合并行/多行合并成一行oracle 10g 函数 wmsys.wm_concat select a,b from t A B---------- ----------------- 1113859 6903148114315 1113859 6903148118863 1113859 6903148123645 1113859 6903148126264select a,wmsys.wm_concat(b) b from t group by a A B---------- --------------------------------------------------------- 1113859 6903148114315,6903148118863,6903148123645,6903148126264[@more@]
nologging和insert /*+append*/
nologging和insert /*+append*/ 引文地址:http://blogold.chinaunix.net/u2/82363/showart_1802490.htmlalter table test nologginginsert /*+ append */ into test selectask tom上有过一篇文章,是说Oracle实际上需要满足表是nologging和insert /*+append*/两个条件才真正实现nologging的在insert数据量很大的时候(千万级),减少redo的产生对性能应该有很大的提高。这是一个使用append和nologging对redo产生情况的实验。结论:-------------------------------一、非归档模式下:没有优化前 (1281372 redo size)1、单一的使用nologg
常用监控SQL
1.监控事例的等待: select event,sum(decode(wait_time,0,0,1)) prev, sum(decode(wait_time,0,1,0)) curr,count(*) from v$session_wait group by event order by 4;2.回滚段的争用情况:select name,waits,gets,waits/gets ratio from v$rollstat a,v$rollname b where a.usn=b.usn;3.监控表空间的I/O比例:select df.tablespace_name name,df.file_name "ile",f.phyrds pyr,f.phyblkrd pbr,f.phywrts pyw,f.phyblkwrt pbw from v$filestat f,dba_data_files dfwhere f.file#=df.file_id4.监空文件系统的I/O比例:s
解决 'PLAN_TABLE' is old version
解决 'PLAN_TABLE' is old version分析sql执行计划时,遇到'PLAN_TABLE' is old version细想起来,数据库是从低版本升级的,估计是这个原因解决方法: 删除plan_table重建SQL>explain plan for select * from users;Explained.SQL>select * from table(dbms_xplan.display);PLAN_TABLE_OUTPUT-------------------------------------------------------------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes | Cost |-----------------------------------------