oracle系统性能优化及管理
文章平均质量分 70
haiross
这个作者很懒,什么都没留下…
展开
-
UNDO性能优化小总结
Oracle:UNDO机制2012-04-05 15:24:35分类: OracleOracle绝对禁止一个用户查看另一个用户未提交的事务数据。启动一个DML事务时,已修改数据的象前版本被缓存在database buffer cache,再有一个缓冲副本被写入一个回退段(undo segment)上。Undo segment三个重要目的:1)转载 2013-09-04 10:32:40 · 3096 阅读 · 0 评论 -
oracle表连接深入浅出
oracle表连接深入浅出分类: oracle 原理分析2010-08-20 01:56 1221人阅读 评论(2) 收藏 举报oraclejointable优化inputbuildauthor:skatetime:2010-08-20 表的连接 表的连接是指在一个SQL语句中通过表与表之间的关联,从一个或多个表检索出相关的数据。如果一个SQL语句的关联转载 2013-10-16 10:30:19 · 881 阅读 · 0 评论 -
深入研究B树索引
深入研究B树索引(一)上一篇 /下一篇 2008-05-27 13:03:41 / 个人分类:工作技术查看( 15908 ) /评论( 76 ) / 评分( 218 / 103 ) 摘要:本文对B树索引的结构、内部管理等方面做了一个全面的介绍。同时深入探讨了一些与B树索引有关的广为流传的说法,比如删除记录对索引的影响,定期重建索引能解决许多性能问题等。1.转载 2013-09-27 13:23:48 · 1171 阅读 · 0 评论 -
Oracle 全表扫描及其执行计划(full table scan)
Oracle 全表扫描及其执行计划(full table scan)分类: Oracle 性能优化 2013-05-24 21:46 1300人阅读 评论(1)收藏 举报 全表扫描是Oracle访问数据库表是较为常见的访问方式之一。很多朋友一看到SQL语句执行计划中的全表扫描,就要考虑对其进行修理一番。全表扫描的存在,的确存在可能优化的余地。但事实上很转载 2013-11-01 16:03:45 · 13031 阅读 · 0 评论 -
Oracle性能误区--MTS,RAC,分区,并行查询
Oracle性能误区--MTS,RAC,分区,并行查询 为了提高性能,我们针对Oracle数据库本身提供了的方法或方案进行过不少的偿试主要包括:共享服务器模式(MTS)集群技术(Clustering),RAC 分区并行处理(主要是并行查询)Oracle提供的这些特性确实是用来进行性能改善的,但我们往往忽略了对自身应用特性的分析,它们是否适合于我们.最近,通过对这方面知识的深入了解,发现我们以前存在转载 2013-11-05 14:31:10 · 2009 阅读 · 0 评论 -
Select ..for update(nowait)语句在表级别上产生RS锁,在数据行上产生行级锁(是一种X锁)
一、悲观封锁锁在用户修改之前就发挥作用:Select ..for update(nowait)Select * from tab1 for update用户发出这条命令之后,oracle将会对返回集中的数据建立行级封锁,以防止其他用户的修改。如果此时其他用户对上面返回结果集的数据进行dml或ddl操作都会返回一个错误信息或发生阻塞。1:对返回结果集进行update或dele原创 2013-09-24 08:27:58 · 3311 阅读 · 0 评论 -
2013.11.8Oracle Database 10g 性能调整与优化 [ 中文版 ]
http://pan.baidu.com/share/link?shareid=393687&uk=3962920981http://down.51cto.com/data/744512 Oracle索引技术pdf原创 2013-11-11 17:13:03 · 1073 阅读 · 0 评论 -
对执行计划的解释
如何查看执行计划 2013-09-23 10:50:51 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://dreamsanqin.blog.51cto.com/845412/1300402一、如何查看执行计划1.使用SQL123456转载 2013-12-09 16:30:03 · 1757 阅读 · 0 评论 -
Oracle优化器的优化方式和优化模式
Oracle优化器的优化方式和优化模式Oracle在执行一个SQL之前,首先要分析一下语句的执行计划,然后再按执行计划去执行。分析语句的执行计划的工作是由优化器(Optimizer) 来完成的。不同的情况,一条SQL可能有多种执行计划,但在某一时点,一定只有一种执行计划是最优的,花费时间是最少的。相信你一定会用Pl/sql Developer、Toad等工具去看一个语句的执行计划,不过你可能对转载 2013-12-09 16:35:51 · 4360 阅读 · 0 评论 -
密码即将过期提示的影响简析(SP2-0619、SP2-0611)
密码即将过期提示的影响简析2012-08-30 09:13:56 我来说两句 作者: chen11-1 当用户密码即将过期时,在登录时Oracle会提示ORA-28002错误,但是并不会影响正常的登录。 本来认为这个信息并没有太大的影响,但是没想到这个错误会导致SET AUTOTRACE功能失效: solaris*orcl-/home转载 2013-12-09 13:48:17 · 1378 阅读 · 0 评论 -
自动收集和手工收集统计数据信息讲解
自动收集和手工收集统计信息讲解撒子是自动统计数据喔???show parameter optimizer_mode;--查看当前数据库CBO优化方式,默认all_rows方式select job_name,state,owner from dba_scheduler_jobs;--查看当前调度程序的运行状态,scheduled表示正在被调用JOB_N转载 2013-12-09 11:34:43 · 1443 阅读 · 0 评论 -
Eygle的《深入解析Oracle-DBA 入门、进阶与诊断案例》——脚本整理
Eygle的《深入解析Oracle-DBA 入门、进阶与诊断案例》——脚本整理前一段时间,看了Eygle的《深入解析Oracle-DBA 入门、进阶与诊断案例》一书,使自己受益匪浅。在书中出现了一些调用脚本,有的脚本在书中没有给出,可能会导致看书时不明白,我这里把我整理的脚本贡献出来,希望大家一起学习。脚本涉及:gethidpar.sql 获取隐含参数转载 2013-12-09 09:54:13 · 1160 阅读 · 0 评论 -
统计ORACLE读块的IO能力
统计ORACLE读块的IO能力忽然想到了测试数据库的真实IO能力,虽然硬件工程师有套方法测试IOPS ,虽然ORACLE也推出了ORAXXX的测试小工具. 实际应用环境中 因为表空间,表的设置,块的大小等因素影响到IOPS. 比如想一个全表扫描,需要多久才能出来呢? 分别在工作负责空闲情况下,高的情况下,并行的情况下.做公司的研发数据库上做了相应的实验,就在空闲情况下得到的时间不太转载 2013-12-10 10:37:14 · 1286 阅读 · 0 评论 -
段头块的结构和包含的信息
TOP 第十二章 之 段头块的争用继续贴出 Troubleshooting Oracle Performance 一书第十二章《优化物理设计》的翻译稿的部分节录。最近真是筋疲力竭。翻译不止是考验技术水平、英文水平、中文驾驭能力,还有耐心和信心。段头块的争用每个表和索引段都会有一个头数据块(header block)。这个数据块包含以下元数据:关于这个段的高水位(hi转载 2013-12-03 09:28:48 · 1168 阅读 · 0 评论 -
创建高性能表
创建高性能表创建高性能表在我们为应用设计数据库的时候,首先要确认我们的数据库是用于OLTP,还是用于DSS,还是用OLTP和DSS的混合。这样就确定了大方向OLTP(on-line transaction processing):是为处理大量并发小事务设计的DSS(decision support systems):是为大数据量的复杂查询而设计的对于OL转载 2013-12-10 10:38:11 · 646 阅读 · 0 评论 -
执行计划中各字段各模块描述
执行计划中各字段各模块描述分类: SQL/PLSQL 优化 2011-10-10 17:27 2463人阅读 评论(2)收藏 举报statisticssqlaccesstableloopsnested 在SQL语句的执行计划中,包含很多字段项和很多模块,其不同字段代表了不同的含义且在不同的情形下某些字段、模块显示或不显示,下面的描述给出了执行计转载 2013-12-18 11:49:56 · 973 阅读 · 0 评论 -
Oracle 11g内置的IO测试包
Oracle 11g内置的IO测试包这两天部门有个同事上新系统, 感觉Orion进行压力测试比较麻烦, 我印象中, Oracle 11g引入了一个进行IO压力测试的包, 具体的过程名包含Calibrat,就到自己测试环境的@?/rdbms/admin目录下查找了一把,得到了下列这些内容..01--catrm.sql 是Resource Manager的基转载 2014-01-03 10:01:19 · 4115 阅读 · 0 评论 -
表的连接
NLJ:根据连接键,把小表的每一行,和大笔的每一行做对比。 一般情况下会对大表连接键上建index。成本计算:读小表的行+(小表的每一行×读取大表的行)SMJ:读取小表和大表读的行,根据连接键排序,然后根据排序后的数据集(小表的和大表的)合进行连接。理想状态:2个表的排序操作都能在内存进行常规情况:2阶段进行: 1.sort run阶段:数据读取到转载 2013-12-20 17:24:07 · 688 阅读 · 0 评论 -
Oracle 执行计划(2)-基数 cardinality【即估算一个操作返回的行数】
Oracle 执行计划(2)-基数 cardinality执行计划的cardinality列。基数是说从数据表,结果集或者索引返回多少行数据。基数=表行数据*选择率。所以讲基数重点是讲选择率,选择率的计算!版本10G 默认 表空间信息:TABLESPACE_NAMEUSERSBLOCK_SIZE8192转载 2013-12-10 10:13:16 · 9427 阅读 · 0 评论 -
《Oracle逻 辑读写深入分析》之分析逻辑读次数受哪些因素的影响(笔记)[以跟踪文件中的事件来计数consistent gets次数,非用公式计算]
跟踪文件里的一些字符串表示的意思:kdstgr:表示数据块,即表对应的段中除了段头块外的块(存储数据行的)或是索引的对应的段中除了段头块外的块(存储索引条目的)。Kdusru: 以当前模式读入,以用于更新操作(Read in current mode for Update )· ktugus: 获取回滚段头(Get Undo Segment header )·原创 2013-12-03 15:05:12 · 2504 阅读 · 0 评论 -
对视图V$SESSION_WAIT和V$PX_SESSION的部分字段解释
V$SESSION_WAITWAIT_CLASS_IDNUMBERIdentifier of the class of the wait eventWAIT_CLASS#NUMBERNumber of the class of the wait eventWAIT_CLASSVARCHAR2(64)Name of the原创 2014-01-07 10:54:55 · 2354 阅读 · 0 评论 -
提示append:insert /*+ APPEND */ .. SELECT
2. 以append方式批量插入的记录,其存储位置在hwm之上,即使hwm之下存在空闲块也不能使用。5. 同 nologging 配合会更快的,使用新的BLOCK 而不使用FREELIST中的块 增加插入速度,使用这个hint可以将数据使用直接路径插入到表的高水线之后,由于是连续的没有使用的空间,所以插入速度快。就是说直接插入,减少了搜索块的时间.会在一定程度上造成空间浪费原创 2013-12-25 16:22:35 · 2081 阅读 · 0 评论 -
调整并行查询性能所需要查看的视图以及其中涉及的统计视图
实时数据查询的视图:即只有存在并行查询操作时,也就是说,在并行查询操作运行期间,这些视图上才针对该并行查询的相关数据。平时,在数据库实例(级别)上没有并行查询运行时,查询这些视图,是没有数据,提示“未选定行”。而且在并行查询期间的不同时刻,查询这些视图所得的数据是不一样的,会变化的,也就是说,这些视图实时反映了该并行查询当前(即执行这些视图进行查询的那一刻)的状态。当前会话的视图:即这些视图只原创 2014-01-07 16:46:25 · 2017 阅读 · 0 评论 -
Investigating Oracle RAC Interconnect Performance
Investigating Oracle RAC Interconnect PerformanceBy Scott Jesse, Bill Burton, Bryan VongrayThe interconnectin an Oracle RAC environment is the backbone of your cluster. A highl转载 2014-01-09 17:27:47 · 1017 阅读 · 0 评论 -
关于oracle事件(等待事件)的小结[收集中]
1、请问大家我通过select * from v$session_wait查询到很多的rdbms ipc message请问该events是什么导致的?空闲事件The background processes (LGWR, DBWR, LMS0) use this event to indicate that they are idle and are wait原创 2014-01-09 14:00:15 · 2039 阅读 · 0 评论 -
OLTP和OLAP模式下的内存分配 [对数据仓库优化指明了纲领方向]
OLTP和OLAP模式下的内存分配联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则。OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。 当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processi转载 2014-01-10 09:18:52 · 1294 阅读 · 0 评论 -
Oracle Metric direct path read
Oracle Metricdirect path readOracle Tips by Burleson Consulting The direct path read Oracle metric occurs during Direct Path operations when the data is asynchronously read from th转载 2014-01-10 09:39:01 · 1102 阅读 · 0 评论 -
ORACLE临时表总结[好处,何时用]
潇湘隐者ORACLE临时表总结2013-08-27 20:23 by 潇湘隐者临时表概念 临时表就是用来暂时保存临时数据(亦或叫中间数据)的一个数据库对象,它和普通表有些类似,然而又有很大区别。它只能存储在临时表空间,而非用户的表空间。ORACLE临时表是会话或事务级别的,只对当前会话或事务可见。每个会话只能查看和修改自己的数据。 临时表语法转载 2013-12-26 14:05:30 · 11603 阅读 · 0 评论 -
direct path read[不错]
direct path read直接路径读(direct>Oracle直接读数据到进程PGA时,这个读取不需要经过SGA。直接路径读等待事件的3个参数分别是file>这类读取通常在以下情况被使用:·磁盘排序IO操作;·并行查询从属进程;·预读操作。 最为常见的是第一种情况。在DSS系统中,存在大量的direct>1. 磁盘排序诊断:如果系转载 2013-12-25 17:00:07 · 1005 阅读 · 0 评论 -
sql语句执行过程的跟踪方法相关介绍
sql跟踪方法相关介绍oracle sql跟踪方法:1、sql_trace打开跟踪:alter session set sql_trace=true;为跟踪文件做标记:alter session set tracefile_identifier='look_for_me';停止跟踪:alter session set sql_trace=false;最后生成的跟踪文转载 2013-12-27 16:52:11 · 2250 阅读 · 0 评论 -
oracle 执行计划分步解读(未看)
oracle 执行计划分步解读上一篇 /下一篇 2013-04-23 11:28:16/ 个人分类:技术查看( 91 ) /评论( 4 ) / 评分( 0 / 0 )参考案例一:SQL> set autotrace traceonlySQL> create table t(col varchar2(20),col2 number);表已创建。转载 2013-10-22 17:13:38 · 947 阅读 · 0 评论 -
oracle 实时查询最耗CPU资源的SQL语句
oracle 实时查询最耗CPU资源的SQL语句 1. 先通过top命令查看产用资源较多的spid号 2.查询当前耗时的会话ID,用户名,sqlID等:select sid,serial#,machine,username,program,sql_hash_value,sql_id, to_char(logon_time,'yyyy/mm/dd hh24转载 2014-01-21 15:34:13 · 4629 阅读 · 0 评论 -
gdb调试之--read by other session 等待事件的重现
gdb调试之--read by other session 等待事件的重现 分类: Oracle Debug2014-01-18 21:55290人阅读评论(0)收藏举报转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/18461845 发生read by ot转载 2014-01-21 20:02:15 · 2356 阅读 · 0 评论 -
记一次磁盘性能测试 [待看,IO测试于并行]
记一次磁盘性能测试 2013-12-16 15:09:12标签:测试结果处理器 吞吐量 空间 规格磁盘测试的目的及概述 尽管随着业界发展,处理器速度、内存大小以及I/O执行速度在快速增长,但I/O操作的吞吐量和响应时间仍然比内存访问操作要慢得多。此外,由于很多工作负载都涉及到I/O操作,磁盘I/O很容易成为系统的瓶颈。因此,磁盘读写性能往往是性转载 2014-01-17 16:57:33 · 3230 阅读 · 0 评论 -
PGA_AGGREGATE_TARGET参数的理解
PGA_AGGREGATE_TARGET参数的理解PGA结构图: 在Oracle9i之前,PGA的计算和控制都是比较复杂的事情,从Oracle9i开始,Oracle提供了一种SQL内存管理的新方法:自动化SQL执行内存管理(Automated SQL Execution Memory Management),使用这个新特性,Or转载 2014-01-09 22:05:46 · 13076 阅读 · 0 评论 -
分析和解决ora-4030错误 [操作系统,内存分配机制]
分析和解决ora-4030错误ORA-4030意味着什么? 这个错误意味着oracle服务器进程不能从操作系统获得更多的内存。这里的内存指的是PGA(程序全局区)以及由配置决定的它的子项。对于专用的服务器进程,内存包括堆栈区、UGA(用户全局区)。UGA包括用户会话数据、游标信息和排序区。在多线程配置中(共享服务器),UGA处于SGA(系统全局区)中,它不会造成ora转载 2014-02-12 09:31:44 · 7390 阅读 · 0 评论 -
一次ORA-4030问题诊断及解决【解决思路不错,说明了对象的统计信息与优化器的优化操作(即选择执行一个SQL语句在该优化参数环境下最佳的执行计划)间的关系】
在报表数据库的后台alert文件中发现了这个错误,简单记录一下问题的诊断和解决过程。数据库版本9204 for Solaris sparc64。 错误信息如下: Errors in file /u1/oracle/admin/repdb01/bdump/repdb01_j000_9888.trc: ORA-12012: error on auto execute of job 3转载 2014-02-12 09:13:12 · 2348 阅读 · 0 评论 -
测量一次I/0最多能读多少块 【验证db_file_multiblock_read_count的值】
测量一次I/0最多能读多少块分类: ORACLE 实验探究 操作系统相关db_file_multiblock_read_count指定了一次最多能够读取的block数,当然这个值也是和操作系统相关的,ORACLE文档说,大多数的平台,一次I/O一般读1M的数据(This value is platform-dependent and is 1MB for most转载 2014-02-13 15:35:10 · 827 阅读 · 0 评论 -
与PGA相关视图的解释说明【句柄原理说明】
认识视图的角度:它的内容是实时更新吗(确切地说,哪些字段是实时更新的当前值,哪些是累计值)?它是实例系统级别,还是会话级别范围?它描述的对象是谁?=8=8=8=8=8=8=8=8==8=8=8=8=8=8=8=8==8=8=8=8=8=8=8=8==8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8==8=8=8=8=8=8=8=8==8=8=8=8=8=8=8=8==8=8=原创 2014-02-12 16:45:06 · 2595 阅读 · 0 评论 -
Oracle MTS - The Multithreaded Shared Servers【共享服务器】
OracleMTS - The Multithreaded Shared ServersOracle Tips by Burleson Consulting The Oracle multithreaded server (MTS, later renamed "shared servers") was developed way-back in the days of Oracle7转载 2014-02-13 14:23:49 · 1067 阅读 · 0 评论